• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Allegro X Scripting - Skill
  3. artwork Filmsetup using skill

Stats

  • Replies 3
  • Subscribers 18
  • Views 11641
  • Members are here 0
More Content

artwork Filmsetup using skill

Gowtham229
Gowtham229 over 6 years ago

Hi All,

I'm a very basic to skill programming can any one help with the code to create automated artwork film setup based on the x-section or layers defined. silkscreen / assy layers should contain refdes both package geometry/board geometry. please help me with code ill try to execute in .il file

artwork setting should be standard r274x gerber with positive plane layers if exists?

Regards,

Gowtham

  • Cancel
  • Sign in to reply
  • Gowtham229
    Gowtham229 over 6 years ago

    i have existing skill code from forum which can automatically create artwork setup for electrical layers. i need to add non-electrical like silk,assembly in it.please help me with main string used for the same

    Regards,

    Gowtham

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • BK2018
    BK2018 over 6 years ago

    Hello Gowtham,  like you I am very new to Skill and have been asked to work on a similar request.

    I think a key function that may help would be axlFilmCreate.

    All the axl functions are described in:  C:\Cadence\SPB_17.2\share\pcb\examples\skill\DOC\FUNCS (on my machine anyway, may be different on yours)

    It this doesn't do it, hopefully it will give you some more ideas to try.

    It goes like this:


    NAME
    axlFilmCreate - create or replace an artwork film
    SYNOPSIS
    axlFilmCreate(
    t_filmname
    ?negative t/nil
    ?undefineLineWidth f_width
    ?sequence x_number
    ?rotation x_angle
    ?xOffset f_x
    ?yOffset f_y
    ?shapeBoundingBox f_value
    ?mirrored t/nil
    ?fullContact t/nil
    ?suppressUnconnectPads t/nil
    ?drawMissingPadApertures t/nil
    ?useApertureRotation t/nil
    ?suppressShapeFill t/nil
    ?vectorBasedPad t/nil
    ?drawHolesOnly t/nil
    ?layers lt_layers
    ?domains lt_domains
    ?ipc2581 lt_ipcDomains
    ) -> t/nil
    FUNCTION
    This creates a new artwork film or replaces an existing film.
    The terminology used matches the artwork dialog. You should reference
    the help for this dialog to understand how the fields are used.

    Defaults for all boolean entiess is nil.

    Due to Valor issue suppressShapeFill will always be nil if using Gerber 4x or 6x.

    drawHolesOnly if t will draw the drill holes for all pads defined on the VIA and PIN
    CLASS for the film.

    Enanble axlDebug for additional error messages.
    NEEDS
    t_filmname - film name
    f_width - undefined line width, default is 0.
    x_sequence - For PDF output ordering. Default is 1, range is 1 to 255.
    If films have the same number, their database order will determine output.
    x_angle - film rotations, values are 0, 90, 180 or 270, Default is 0.
    f_x, f_y - film offset in design units, Default is 0,0
    f_shapeBoundingBox - Shape bounding box in design units. Default is 0.
    lt_layers - list of Allegro layers to apply to film. Default is none.
    Layer names are fully qualified (include both class and subclass)
    Example: "ETCH/TOP"
    A mode exists where if you specify the class name all subclasses of that class
    are listed in the film. Example: "MANUFACTURING"
    lt_domains - list of domains where film should be visible. Values are
    ipc2581, pdf, artwork and visibility. Default is all.
    lt_ipc2581 - list of domains where film should be used in IPC2581.
    Values are inner, outer, misc, doc and soldermask.
    RETURNS
    t if film created
    nil if error
    SEE ALSO
    axlGetParam, axlDeleteObject, axlDebug
    EXAMPLES
    Add/Change:
    - In artwork dialog use RMB to save a film to film (FILM_SETUP.txt) to understand
    how to add films.
    Get all films:
    p = axlGetParam("artwork")
    p->groupMembers
    Get a single film (where format is "artwork:<film name>"):
    s = axlGetParam("artwork:top")
    s->??
    Delete a film (in this case top):
    axlDeleteObject(s)

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Gowtham229
    Gowtham229 over 6 years ago in reply to BK2018

    Hello thanks for your post especially for clear picture about axlfilmcreate function.i tried implementing this few days back and I can do it.since I'm doing most of skills in 16.6 I realised finally that there was a new function which was updated in latest version and done with it. Now I'm planning to improve it by doing some popup popup  by selecting electrical /non-electrical additions.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Cadence Guidelines

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information