Custom LDraw File Syntax Additions: Difference between revisions
(Initialy copy-past) |
(→MLCad: add a missing MLCAD meta tag) |
||
(17 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
Sometimes, [[App Developer|authors]] of LDraw-related [[software]] add special custom syntax elements to the [[LDraw file format]]. | |||
This can create various problems when | |||
* the semantics of such syntax changes between software versions | |||
* different software interprets them differently | |||
* files get widespread which make use of that custom syntax, without it being a standard. | |||
For that reason, doing so in general is a Bad Idea (TM). | |||
However, this in the past has happend quite in some instances. | |||
This page tries to list all the existing custom syntax elements. | |||
== [[MLCad]] == | |||
<code> ROTSTEP (<x-angle> <y-angle> <z-angle> [(REL| ADD | ABS)] | END)</code> | <code> ROTSTEP (<x-angle> <y-angle> <z-angle> [(REL| ADD | ABS)] | END)</code> | ||
<code> BACKGROUND <filename></code> | <code> BACKGROUND <filename></code> | ||
<code> BUFEXCHG (A-H) (STORE | RETRIEVE)</code> | <code> BUFEXCHG (A-H) (STORE | RETRIEVE)</code> | ||
<code> GHOST <LDRAW line></code> | <code> GHOST <LDRAW line></code> | ||
<code> GROUP <n> <name></code> | <code> GROUP <n> <name></code> | ||
<code> MLCAD BGT <group name></code> | <code> MLCAD BGT <group name></code> | ||
<code> MLCAD HIDE</code> | |||
<code> MLCAD SKIP_BEGIN</code> | <code> MLCAD SKIP_BEGIN</code> | ||
<code> MLCAD SKIP_END</code> | <code> MLCAD SKIP_END</code> | ||
<code> ROTATION CENTER <x> <y> <z> "<name>"</code> | <code> ROTATION CENTER <x> <y> <z> "<name>"</code> | ||
<code> ROTATION CONFIG <Rotation ID> <Visible Flag></code> | <code> ROTATION CONFIG <Rotation ID> <Visible Flag></code> | ||
<code> ROTATION AXLE</code> | <code> ROTATION AXLE</code> | ||
<code> MLCAD SPRING</code> | <code> MLCAD SPRING</code> | ||
<code> MLCAD FLEXHOSE</code> | <code> MLCAD FLEXHOSE</code> | ||
<code> MLCAD RUBBER_BELT</code> | <code> MLCAD RUBBER_BELT</code> | ||
LPub | == [[LPub]] == | ||
=== LPub Statements === | |||
<code> LPUB PLI BEGIN SUB=LPUB PLI BEGIN SUB</code> | <code> LPUB PLI BEGIN SUB=LPUB PLI BEGIN SUB</code> | ||
<code> LPUB PLI BEGIN IGN=LPUB PLI BEGIN IGN</code> | <code> LPUB PLI BEGIN IGN=LPUB PLI BEGIN IGN</code> | ||
<code> LPUB END=PLIST END</code> | <code> LPUB END=PLIST END</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> BI BEGIN GRAYED=BI BEGIN GRAYED</code> | <code> BI BEGIN GRAYED=BI BEGIN GRAYED</code> | ||
<code> BI END=BI END</code> | <code> BI END=BI END</code> | ||
<code> LPUB GROUP REMOVE=LPUB GROUP REMOVE</code> | <code> LPUB GROUP REMOVE=LPUB GROUP REMOVE</code> | ||
=== LPub Page Statements === | |||
<code> SIZE=LPUB PAGE SIZE</code> | <code> SIZE=LPUB PAGE SIZE</code> | ||
<code> PLI (YES|NO)=LPUB PAGE PLI (YES|NO)</code> | <code> PLI (YES|NO)=LPUB PAGE PLI (YES|NO)</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> BACKGROUND TRANS=LPUB PAGE BACKGROUND TRANS</code> | <code> BACKGROUND TRANS=LPUB PAGE BACKGROUND TRANS</code> | ||
<code> BACKGROUND color=LPUB PAGE BACKGROUND color</code> | <code> BACKGROUND color=LPUB PAGE BACKGROUND color</code> | ||
<code> BACKGROUND [STRETCH] png_image_name=LPUB PAGE BACKGROUND [STRETCH]</code> | <code> BACKGROUND [STRETCH] png_image_name=LPUB PAGE BACKGROUND [STRETCH]</code> | ||
<code> png_image_name</code> | <code> png_image_name</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> BORDER SQUARE=LPUB PAGE BORDER SQUARE</code> | <code> BORDER SQUARE=LPUB PAGE BORDER SQUARE</code> | ||
<code> BORDER ROUND=LPUB PAGE BORDER ROUND</code> | <code> BORDER ROUND=LPUB PAGE BORDER ROUND</code> | ||
<code> BORDER MARGINS x_margin y_margin=LPUB PAGE BORDER MARGINS x_margin y_margin</code> | <code> BORDER MARGINS x_margin y_margin=LPUB PAGE BORDER MARGINS x_margin y_margin</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> NUMBER MARGINS x_margin y_margin=LPUB PAGE NUMBER MARGINS x_margin y_margin</code> | <code> NUMBER MARGINS x_margin y_margin=LPUB PAGE NUMBER MARGINS x_margin y_margin</code> | ||
=== LPub Assembly Statements === | |||
<code> MARGINS x_margin y_margin=LPUB ASSEM MARGINS x_margin y_margin</code> | <code> MARGINS x_margin y_margin=LPUB ASSEM MARGINS x_margin y_margin</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> PLACEMENT corner PAGE=LPUB ASSEM PLACEMENT corner PAGE</code> | <code> PLACEMENT corner PAGE=LPUB ASSEM PLACEMENT corner PAGE</code> | ||
<code> PLACEMENT edge PAGE=LPUB ASSEM PLACEMENT edge PAGE</code> | <code> PLACEMENT edge PAGE=LPUB ASSEM PLACEMENT edge PAGE</code> | ||
<code> PLACEMENT CENTER PAGE=LPUB ASSEM PLACEMENT CENTER PAGE</code> | <code> PLACEMENT CENTER PAGE=LPUB ASSEM PLACEMENT CENTER PAGE</code> | ||
<code> PLACEMENT OFFSET x_offset y_offset=LPUB ASSEM PLACEMENT OFFSET x_offset</code> | <code> PLACEMENT OFFSET x_offset y_offset=LPUB ASSEM PLACEMENT OFFSET x_offset</code> | ||
<code> y_offset</code> | <code> y_offset</code> | ||
=== LPub PLI Layout Statements === | |||
<code> PART MARGINS x y=LPUB PLI PART MARGINS x y</code> | <code> PART MARGINS x y=LPUB PLI PART MARGINS x y</code> | ||
<code> MARGINS x y=LPUB PLI MARGINS x y</code> | <code> MARGINS x y=LPUB PLI MARGINS x y</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> PLACEMENT CENTER PAGE=LPUB PLI PLACEMENT CENTER PAGE</code> | <code> PLACEMENT CENTER PAGE=LPUB PLI PLACEMENT CENTER PAGE</code> | ||
<code> PLACEMENT edge PAGE=LPUB PLI PLACEMENT edge PAGE</code> | <code> PLACEMENT edge PAGE=LPUB PLI PLACEMENT edge PAGE</code> | ||
<code> PLACEMENT CENTER ASSEM INSIDE=LPUB PLI PLACEMENT CENTER ASSEM INSIDE</code> | <code> PLACEMENT CENTER ASSEM INSIDE=LPUB PLI PLACEMENT CENTER ASSEM INSIDE</code> | ||
<code> PLACEMENT corner ASSEM INSIDE=LPUB PLI PLACEMENT corner ASSEM INSIDE</code> | <code> PLACEMENT corner ASSEM INSIDE=LPUB PLI PLACEMENT corner ASSEM INSIDE</code> | ||
<code> PLACEMENT edge ASSEM INSIDE=LPUB PLI PLACEMENT edge ASSEM INSIDE</code> | <code> PLACEMENT edge ASSEM INSIDE=LPUB PLI PLACEMENT edge ASSEM INSIDE</code> | ||
<code> PLACEMENT corner ASSEM OUTSIDE=LPUB PLI PLACEMENT corner ASSEM OUTSIDE</code> | <code> PLACEMENT corner ASSEM OUTSIDE=LPUB PLI PLACEMENT corner ASSEM OUTSIDE</code> | ||
<code> PLACEMENT edge justification ASSEM OUTSIDE=LPUB PLI PLACEMENT edge</code> | <code> PLACEMENT edge justification ASSEM OUTSIDE=LPUB PLI PLACEMENT edge</code> | ||
<code> justification ASSEM OUTSIDE</code> | <code> justification ASSEM OUTSIDE</code> | ||
<code> PLACEMENT OFFSET x_offset y_offset=LPUB PLI PLACEMENT OFFSET x_offset</code> | <code> PLACEMENT OFFSET x_offset y_offset=LPUB PLI PLACEMENT OFFSET x_offset</code> | ||
<code> y_offset</code> | <code> y_offset</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> BORDER SQUARE color thickness=LPUB PLI BORDER SQUARE color thickness</code> | <code> BORDER SQUARE color thickness=LPUB PLI BORDER SQUARE color thickness</code> | ||
<code> BORDER ROUND color thickness radius=LPUB PLI BORDER ROUND color</code> | <code> BORDER ROUND color thickness radius=LPUB PLI BORDER ROUND color</code> | ||
<code> thickness radius</code> | <code> thickness radius</code> | ||
<code> BORDERLESS=LPUB PLI BORDERLESS</code> | <code> BORDERLESS=LPUB PLI BORDERLESS</code> | ||
<code> BORDER MARGINS x y=LPUB PLI BORDER MARGINS x y</code> | <code> BORDER MARGINS x y=LPUB PLI BORDER MARGINS x y</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> BACKGROUND TRANS=LPUB PLI BACKGROUND TRANS</code> | <code> BACKGROUND TRANS=LPUB PLI BACKGROUND TRANS</code> | ||
<code> BACKGROUND color=LPUB PLI BACKGROUND color</code> | <code> BACKGROUND color=LPUB PLI BACKGROUND color</code> | ||
<code> BACKGROUND [STRETCH] fname=LPUB PLI BACKGROUND [STRETCH] fname</code> | <code> BACKGROUND [STRETCH] fname=LPUB PLI BACKGROUND [STRETCH] fname</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> CONSTRAIN AREA=LPUB PLI CONSTRAIN AREA</code> | <code> CONSTRAIN AREA=LPUB PLI CONSTRAIN AREA</code> | ||
<code> CONSTRAIN SQUARE=LPUB PLI CONSTRAIN SQUARE</code> | <code> CONSTRAIN SQUARE=LPUB PLI CONSTRAIN SQUARE</code> | ||
<code> CONSTRAIN WIDTH width=LPUB PLI CONSTRAIN WIDTH width</code> | <code> CONSTRAIN WIDTH width=LPUB PLI CONSTRAIN WIDTH width</code> | ||
<code> CONSTRAIN HEIGHT height=LPUB PLI CONSTRAIN HEIGHT height</code> | <code> CONSTRAIN HEIGHT height=LPUB PLI CONSTRAIN HEIGHT height</code> | ||
<code> CONSTRAIN COLS cols=LPUB PLI CONSTRAIN COLS cols</code> | <code> CONSTRAIN COLS cols=LPUB PLI CONSTRAIN COLS cols</code> | ||
=== LPub Callout Statements === | |||
<code> MARGINS x y=LPUB CALLOUT MARGINS x y=</code> | <code> MARGINS x y=LPUB CALLOUT MARGINS x y=</code> | ||
<code> HORIZONTAL=LPUB CALLOUT HORIZONTAL</code> | <code> HORIZONTAL=LPUB CALLOUT HORIZONTAL</code> | ||
<code> VERTICAL=LPUB CALLOUT VERTICAL</code> | <code> VERTICAL=LPUB CALLOUT VERTICAL</code> | ||
<code> SEPARATOR seperator_color separator_width=LPUB CALLOUT SEPARATOR</code> | <code> SEPARATOR seperator_color separator_width=LPUB CALLOUT SEPARATOR</code> | ||
<code> seperator_color separator_width</code> | <code> seperator_color separator_width</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> BORDER SQUARE color thickness=LPUB CALLOUT BORDER SQUARE color thickness</code> | <code> BORDER SQUARE color thickness=LPUB CALLOUT BORDER SQUARE color thickness</code> | ||
<code> BORDER ROUND color thickness radius=LPUB CALLOUT BORDER ROUND color</code> | <code> BORDER ROUND color thickness radius=LPUB CALLOUT BORDER ROUND color</code> | ||
<code> thickness radius</code> | <code> thickness radius</code> | ||
<code> BORDER MARGINS x y=LPUB CALLOUT BORDER MARGINS x y</code> | <code> BORDER MARGINS x y=LPUB CALLOUT BORDER MARGINS x y</code> | ||
<code> BORDERLESS=LPUB CALLOUT BORDERLESS</code> | <code> BORDERLESS=LPUB CALLOUT BORDERLESS</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> BACKGROUND TRANS=LPUB CALLOUT BACKGROUND TRANS</code> | <code> BACKGROUND TRANS=LPUB CALLOUT BACKGROUND TRANS</code> | ||
<code> BACKGROUND color=LPUB CALLOUT BACKGROUND color</code> | <code> BACKGROUND color=LPUB CALLOUT BACKGROUND color</code> | ||
<code> BACKGROUND [STRETCH] fname=LPUB CALLOUT BACKGROUND [STRETCH] fname</code> | <code> BACKGROUND [STRETCH] fname=LPUB CALLOUT BACKGROUND [STRETCH] fname</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> BEGIN=LPUB CALLOUT BEGIN=LPUB CALLOUT BEGIN=LPUB CALLOUT BEGIN</code> | <code> BEGIN=LPUB CALLOUT BEGIN=LPUB CALLOUT BEGIN=LPUB CALLOUT BEGIN</code> | ||
<code> END=LPUB CALLOUT END=LPUB CALLOUT END=LPUB CALLOUT END</code> | <code> END=LPUB CALLOUT END=LPUB CALLOUT END=LPUB CALLOUT END</code> | ||
<code> DIVIDER=LPUB CALLOUT DIVIDER</code> | <code> DIVIDER=LPUB CALLOUT DIVIDER</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> INSTANCE_COUNT MARGINS x y=LPUB CALLOUT INSTANCE_COUNT MARGINS x y</code> | <code> INSTANCE_COUNT MARGINS x y=LPUB CALLOUT INSTANCE_COUNT MARGINS x y</code> | ||
<code> INSTANCE_COUNT PLACEMENT corner CALLOUT preposition=LPUB CALLOUT</code> | <code> INSTANCE_COUNT PLACEMENT corner CALLOUT preposition=LPUB CALLOUT</code> | ||
<code> INSTANCE_COUNT PLACEMENT corner CALLOUT preposition</code> | <code> INSTANCE_COUNT PLACEMENT corner CALLOUT preposition</code> | ||
<code> INSTANCE_COUNT PLACEMENT edge CALLOUT INSIDE=LPUB CALLOUT INSTANCE_COUNT</code> | <code> INSTANCE_COUNT PLACEMENT edge CALLOUT INSIDE=LPUB CALLOUT INSTANCE_COUNT</code> | ||
<code> PLACEMENT edge CALLOUT INSIDE</code> | <code> PLACEMENT edge CALLOUT INSIDE</code> | ||
<code> INSTANCE_COUNT PLACEMENT horiz justification CALLOUT OUTSIDE=LPUB</code> | <code> INSTANCE_COUNT PLACEMENT horiz justification CALLOUT OUTSIDE=LPUB</code> | ||
<code> CALLOUT INSTANCE_COUNT PLACEMENT horiz justification CALLOUT OUTSIDE</code> | <code> CALLOUT INSTANCE_COUNT PLACEMENT horiz justification CALLOUT OUTSIDE</code> | ||
<code> INSTANCE_COUNT PLACEMENT vert justification CALLOUT OUTSIDE=LPUB CALLOUT</code> | <code> INSTANCE_COUNT PLACEMENT vert justification CALLOUT OUTSIDE=LPUB CALLOUT</code> | ||
<code> INSTANCE_COUNT PLACEMENT vert justification CALLOUT OUTSIDE</code> | <code> INSTANCE_COUNT PLACEMENT vert justification CALLOUT OUTSIDE</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> PLACEMENT CENTER PAGE=LPUB CALLOUT PLACEMENT CENTER PAGE</code> | <code> PLACEMENT CENTER PAGE=LPUB CALLOUT PLACEMENT CENTER PAGE</code> | ||
<code> PLACEMENT corner PAGE=LPUB CALLOUT PLACEMENT corner PAGE</code> | <code> PLACEMENT corner PAGE=LPUB CALLOUT PLACEMENT corner PAGE</code> | ||
<code> PLACEMENT edge PAGE=LPUB CALLOUT PLACEMENT edge PAGE</code> | <code> PLACEMENT edge PAGE=LPUB CALLOUT PLACEMENT edge PAGE</code> | ||
<code> PLACEMENT CENTER ASSEM INSIDE=LPUB CALLOUT PLACEMENT CENTER ASSEM INSIDE</code> | <code> PLACEMENT CENTER ASSEM INSIDE=LPUB CALLOUT PLACEMENT CENTER ASSEM INSIDE</code> | ||
<code> PLACEMENT corner ASSEM INSIDE=LPUB CALLOUT PLACEMENT corner ASSEM INSIDE</code> | <code> PLACEMENT corner ASSEM INSIDE=LPUB CALLOUT PLACEMENT corner ASSEM INSIDE</code> | ||
<code> PLACEMENT edge ASSEM INSIDE=LPUB CALLOUT PLACEMENT edge ASSEM INSIDE</code> | <code> PLACEMENT edge ASSEM INSIDE=LPUB CALLOUT PLACEMENT edge ASSEM INSIDE</code> | ||
<code> PLACEMENT corner ASSEM OUTSIDE=LPUB CALLOUT PLACEMENT corner ASSEM OUTSIDE</code> | <code> PLACEMENT corner ASSEM OUTSIDE=LPUB CALLOUT PLACEMENT corner ASSEM OUTSIDE</code> | ||
<code> PLACEMENT edge justification ASSEM OUTSIDE=LPUB CALLOUT PLACEMENT edge</code> | <code> PLACEMENT edge justification ASSEM OUTSIDE=LPUB CALLOUT PLACEMENT edge</code> | ||
<code> justification ASSEM OUTSIDE</code> | <code> justification ASSEM OUTSIDE</code> | ||
<code> PLACEMENT OFFSET x_offset y_offset=LPUB CALLOUT PLACEMENT OFFSET</code> | <code> PLACEMENT OFFSET x_offset y_offset=LPUB CALLOUT PLACEMENT OFFSET</code> | ||
<code> x_offset y_offset</code> | <code> x_offset y_offset</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> POINTER BASE base=LPUB CALLOUT POINTER BASE base</code> | <code> POINTER BASE base=LPUB CALLOUT POINTER BASE base</code> | ||
<code> POINTER placement loc assem_x assem_y=</code> | <code> POINTER placement loc assem_x assem_y=</code> | ||
=== LPub Step Number Statements === | |||
<code> PLACEMENT CENTER PAGE=LPUB STEP_NUMBER PLACEMENT CENTER PAGE</code> | <code> PLACEMENT CENTER PAGE=LPUB STEP_NUMBER PLACEMENT CENTER PAGE</code> | ||
<code> PLACEMENT corner PAGE=LPUB STEP_NUMBER PLACEMENT corner PAGE</code> | <code> PLACEMENT corner PAGE=LPUB STEP_NUMBER PLACEMENT corner PAGE</code> | ||
<code> PLACEMENT edge PAGE=LPUB STEP_NUMBER PLACEMENT edge PAGE</code> | <code> PLACEMENT edge PAGE=LPUB STEP_NUMBER PLACEMENT edge PAGE</code> | ||
<code> PLACEMENT CENTER ASSEM INSIDE=LPUB STEP_NUMBER PLACEMENT CENTER ASSEM INSIDE</code> | <code> PLACEMENT CENTER ASSEM INSIDE=LPUB STEP_NUMBER PLACEMENT CENTER ASSEM INSIDE</code> | ||
<code> PLACEMENT corner ASSEM INSIDE=LPUB STEP_NUMBER PLACEMENT corner ASSEM INSIDE</code> | <code> PLACEMENT corner ASSEM INSIDE=LPUB STEP_NUMBER PLACEMENT corner ASSEM INSIDE</code> | ||
<code> PLACEMENT edge ASSEM INSIDE=LPUB STEP_NUMBER PLACEMENT edge ASSEM INSIDE</code> | <code> PLACEMENT edge ASSEM INSIDE=LPUB STEP_NUMBER PLACEMENT edge ASSEM INSIDE</code> | ||
<code> PLACEMENT corner PLI=LPUB STEP_NUMBER PLACEMENT corner PLI</code> | <code> PLACEMENT corner PLI=LPUB STEP_NUMBER PLACEMENT corner PLI</code> | ||
<code> PLACEMENT edge justification PLI=LPUB STEP_NUMBER PLACEMENT edge</code> | <code> PLACEMENT edge justification PLI=LPUB STEP_NUMBER PLACEMENT edge</code> | ||
<code> justification PLI</code> | <code> justification PLI</code> | ||
<code> PLACEMENT corner ASSEM OUTSIDE=LPUB STEP_NUMBER PLACEMENT corner ASSEM</code> | <code> PLACEMENT corner ASSEM OUTSIDE=LPUB STEP_NUMBER PLACEMENT corner ASSEM</code> | ||
<code> OUTSIDE</code> | <code> OUTSIDE</code> | ||
<code> PLACEMENT edge justification ASSEM OUTSIDE=LPUB STEP_NUMBER PLACEMENT</code> | <code> PLACEMENT edge justification ASSEM OUTSIDE=LPUB STEP_NUMBER PLACEMENT</code> | ||
<code> edge justification ASSEM OUTSIDE</code> | <code> edge justification ASSEM OUTSIDE</code> | ||
=== LPub Multi-Step Number Statements === | |||
<code> VERTICAL=LPUB MULTI_STEP VERTICAL</code> | <code> VERTICAL=LPUB MULTI_STEP VERTICAL</code> | ||
<code> HORIZONTAL=LPUB MULTI_STEP HORIZONTAL</code> | <code> HORIZONTAL=LPUB MULTI_STEP HORIZONTAL</code> | ||
<code> MARGINS x y=LPUB MULTI_STEP MARGINS x y</code> | <code> MARGINS x y=LPUB MULTI_STEP MARGINS x y</code> | ||
<code> SEPARATOR seperator_color separator_width=LPUB MULTI_STEP SEPARATOR</code> | <code> SEPARATOR seperator_color separator_width=LPUB MULTI_STEP SEPARATOR</code> | ||
<code> seperator_color separator_width</code> | <code> seperator_color separator_width</code> | ||
<code> BEGIN=LPUB MULTI_STEP BEGIN</code> | <code> BEGIN=LPUB MULTI_STEP BEGIN</code> | ||
<code> DIVIDER=LPUB MULTI_STEP DIVIDER</code> | <code> DIVIDER=LPUB MULTI_STEP DIVIDER</code> | ||
<code> END=LPUB MULTI_STEP END</code> | <code> END=LPUB MULTI_STEP END</code> | ||
=== LPub Bill Of Material Statements === | |||
<code> PART MARGINS x y=LPUB BOM PART MARGINS x y</code> | <code> PART MARGINS x y=LPUB BOM PART MARGINS x y</code> | ||
<code> MARGINS x y=LPUB BOM MARGINS x y</code> | <code> MARGINS x y=LPUB BOM MARGINS x y</code> | ||
<code> BEGIN IGN=LPUB BOM BEGIN IGN</code> | <code> BEGIN IGN=LPUB BOM BEGIN IGN</code> | ||
<code> END=LPUB BOM END</code> | <code> END=LPUB BOM END</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> BORDER SQUARE color thickness=LPUB BOM BORDER SQUARE color thickness</code> | <code> BORDER SQUARE color thickness=LPUB BOM BORDER SQUARE color thickness</code> | ||
<code> BORDER ROUND color thickness radius=LPUB BOM BORDER ROUND color</code> | <code> BORDER ROUND color thickness radius=LPUB BOM BORDER ROUND color</code> | ||
<code> thickness radius</code> | <code> thickness radius</code> | ||
<code> BORDERLESS=LPUB BOM BORDERLESS</code> | <code> BORDERLESS=LPUB BOM BORDERLESS</code> | ||
<code> BORDER MARGINS x y=LPUB BOM BORDER MARGINS x y</code> | <code> BORDER MARGINS x y=LPUB BOM BORDER MARGINS x y</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> BACKGROUND TRANS=LPUB BOM BACKGROUND TRANS</code> | <code> BACKGROUND TRANS=LPUB BOM BACKGROUND TRANS</code> | ||
<code> BACKGROUND color=LPUB BOM BACKGROUND color</code> | <code> BACKGROUND color=LPUB BOM BACKGROUND color</code> | ||
<code> BACKGROUND [STRETCH] fname=LPUB BOM BACKGROUND [STRETCH] fname</code> | <code> BACKGROUND [STRETCH] fname=LPUB BOM BACKGROUND [STRETCH] fname</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> CONSTRAIN AREA=LPUB BOM CONSTRAIN AREA</code> | <code> CONSTRAIN AREA=LPUB BOM CONSTRAIN AREA</code> | ||
<code> CONSTRAIN SQUARE=LPUB BOM CONSTRAIN SQUARE</code> | <code> CONSTRAIN SQUARE=LPUB BOM CONSTRAIN SQUARE</code> | ||
<code> CONSTRAIN WIDTH width=LPUB BOM CONSTRAIN WIDTH width</code> | <code> CONSTRAIN WIDTH width=LPUB BOM CONSTRAIN WIDTH width</code> | ||
<code> CONSTRAIN HEIGHT height=LPUB BOM CONSTRAIN HEIGHT height</code> | <code> CONSTRAIN HEIGHT height=LPUB BOM CONSTRAIN HEIGHT height</code> | ||
<code> CONSTRAIN COLS cols=LPUB BOM CONSTRAIN COLS cols</code> | <code> CONSTRAIN COLS cols=LPUB BOM CONSTRAIN COLS cols</code> | ||
<code> -=-</code> | <code> -=-</code> | ||
<code> SORT WIDTH=LPUB BOM SORT WIDTH</code> | <code> SORT WIDTH=LPUB BOM SORT WIDTH</code> | ||
<code> PACK SUBS=LPUB BOM PACK SUBS</code> | <code> PACK SUBS=LPUB BOM PACK SUBS</code> | ||
LSynth | == [[LSynth]] == | ||
<code>SYNTH BEGIN (RIBBED_TUBE |</code> | <code>SYNTH BEGIN (RIBBED_TUBE |</code> | ||
<code> FLEXIBLE_TUBE |</code> | <code> FLEXIBLE_TUBE |</code> | ||
<code> FLEX_CABLE |</code> | <code> FLEX_CABLE |</code> | ||
<code> RIGID_TUBE |</code> | <code> RIGID_TUBE |</code> | ||
<code> ELECTRIC_CABLE |</code> | <code> ELECTRIC_CABLE |</code> | ||
<code> PNEUMATIC_TUBE |</code> | <code> PNEUMATIC_TUBE |</code> | ||
<code> FLEXIBLE_AXLE |</code> | <code> FLEXIBLE_AXLE |</code> | ||
<code> FIBER_OPTIC_CABLE |</code> | <code> FIBER_OPTIC_CABLE |</code> | ||
<code> RUBBER_BAND |</code> | <code> RUBBER_BAND |</code> | ||
<code> CHAIN |</code> | <code> CHAIN |</code> | ||
<code> PLASTIC_TREAD |</code> | <code> PLASTIC_TREAD |</code> | ||
<code> RUBBER_TREAD)</code></pre> | |||
<code> RUBBER_TREAD)</code> | |||
</pre> | |||
<code> SYNTH END</code> | <code> SYNTH END</code> | ||
<code> SYNTH (INSIDE | OUTSIDE | CROSS | SHOW | HIDE)</code> | <code> SYNTH (INSIDE | OUTSIDE | CROSS | SHOW | HIDE)</code> | ||
<code> SYNTHESIZED BEGIN</code> | <code> SYNTHESIZED BEGIN</code> | ||
<code> SYNTHESIZED END</code> | <code> SYNTHESIZED END</code> | ||
L3P | == [[L3P]] == | ||
<code> L3P IFPOV</code> | <code> L3P IFPOV</code> | ||
<code> L3P IFNOTPOV</code> | <code> L3P IFNOTPOV</code> | ||
<code> L3P ELSEPOV</code> | <code> L3P ELSEPOV</code> | ||
<code> L3P ENDPOV</code> | <code> L3P ENDPOV</code> | ||
LDLite | == [[LDLite]] == | ||
<code> COLOR</code> | <code> COLOR</code> | ||
<code> COLOUR</code> | <code> COLOUR</code> | ||
<code> TRANSLATE</code> | <code> TRANSLATE</code> | ||
<code> ROTATE</code> | <code> ROTATE</code> | ||
<code> SCALE</code> | <code> SCALE</code> | ||
<code> TRANSFORM</code> | <code> TRANSFORM</code> | ||
<code> COLORNAME</code> | <code> COLORNAME</code> | ||
<code> COLOURNAME</code> | <code> COLOURNAME</code> | ||
<code> POINT</code> | <code> POINT</code> | ||
<code> MATRIX</code> | <code> MATRIX</code> | ||
<code> CMDLINE <line></code> | <code> CMDLINE <line></code> | ||
[[Category:LDraw Files Syntax]] | |||
[[Category: |
Latest revision as of 01:54, 22 February 2020
Sometimes, authors of LDraw-related software add special custom syntax elements to the LDraw file format.
This can create various problems when
- the semantics of such syntax changes between software versions
- different software interprets them differently
- files get widespread which make use of that custom syntax, without it being a standard.
For that reason, doing so in general is a Bad Idea (TM).
However, this in the past has happend quite in some instances.
This page tries to list all the existing custom syntax elements.
MLCad
ROTSTEP (<x-angle> <y-angle> <z-angle> [(REL| ADD | ABS)] | END)
BACKGROUND <filename>
BUFEXCHG (A-H) (STORE | RETRIEVE)
GHOST <LDRAW line>
GROUP <n> <name>
MLCAD BGT <group name>
MLCAD HIDE
MLCAD SKIP_BEGIN
MLCAD SKIP_END
ROTATION CENTER <x> <y> <z> "<name>"
ROTATION CONFIG <Rotation ID> <Visible Flag>
ROTATION AXLE
MLCAD SPRING
MLCAD FLEXHOSE
MLCAD RUBBER_BELT
LPub
LPub Statements
LPUB PLI BEGIN SUB=LPUB PLI BEGIN SUB
LPUB PLI BEGIN IGN=LPUB PLI BEGIN IGN
LPUB END=PLIST END
-=-
BI BEGIN GRAYED=BI BEGIN GRAYED
BI END=BI END
LPUB GROUP REMOVE=LPUB GROUP REMOVE
LPub Page Statements
SIZE=LPUB PAGE SIZE
PLI (YES|NO)=LPUB PAGE PLI (YES|NO)
-=-
BACKGROUND TRANS=LPUB PAGE BACKGROUND TRANS
BACKGROUND color=LPUB PAGE BACKGROUND color
BACKGROUND [STRETCH] png_image_name=LPUB PAGE BACKGROUND [STRETCH]
png_image_name
-=-
BORDER SQUARE=LPUB PAGE BORDER SQUARE
BORDER ROUND=LPUB PAGE BORDER ROUND
BORDER MARGINS x_margin y_margin=LPUB PAGE BORDER MARGINS x_margin y_margin
-=-
NUMBER MARGINS x_margin y_margin=LPUB PAGE NUMBER MARGINS x_margin y_margin
LPub Assembly Statements
MARGINS x_margin y_margin=LPUB ASSEM MARGINS x_margin y_margin
-=-
PLACEMENT corner PAGE=LPUB ASSEM PLACEMENT corner PAGE
PLACEMENT edge PAGE=LPUB ASSEM PLACEMENT edge PAGE
PLACEMENT CENTER PAGE=LPUB ASSEM PLACEMENT CENTER PAGE
PLACEMENT OFFSET x_offset y_offset=LPUB ASSEM PLACEMENT OFFSET x_offset
y_offset
LPub PLI Layout Statements
PART MARGINS x y=LPUB PLI PART MARGINS x y
MARGINS x y=LPUB PLI MARGINS x y
-=-
PLACEMENT CENTER PAGE=LPUB PLI PLACEMENT CENTER PAGE
PLACEMENT edge PAGE=LPUB PLI PLACEMENT edge PAGE
PLACEMENT CENTER ASSEM INSIDE=LPUB PLI PLACEMENT CENTER ASSEM INSIDE
PLACEMENT corner ASSEM INSIDE=LPUB PLI PLACEMENT corner ASSEM INSIDE
PLACEMENT edge ASSEM INSIDE=LPUB PLI PLACEMENT edge ASSEM INSIDE
PLACEMENT corner ASSEM OUTSIDE=LPUB PLI PLACEMENT corner ASSEM OUTSIDE
PLACEMENT edge justification ASSEM OUTSIDE=LPUB PLI PLACEMENT edge
justification ASSEM OUTSIDE
PLACEMENT OFFSET x_offset y_offset=LPUB PLI PLACEMENT OFFSET x_offset
y_offset
-=-
BORDER SQUARE color thickness=LPUB PLI BORDER SQUARE color thickness
BORDER ROUND color thickness radius=LPUB PLI BORDER ROUND color
thickness radius
BORDERLESS=LPUB PLI BORDERLESS
BORDER MARGINS x y=LPUB PLI BORDER MARGINS x y
-=-
BACKGROUND TRANS=LPUB PLI BACKGROUND TRANS
BACKGROUND color=LPUB PLI BACKGROUND color
BACKGROUND [STRETCH] fname=LPUB PLI BACKGROUND [STRETCH] fname
-=-
CONSTRAIN AREA=LPUB PLI CONSTRAIN AREA
CONSTRAIN SQUARE=LPUB PLI CONSTRAIN SQUARE
CONSTRAIN WIDTH width=LPUB PLI CONSTRAIN WIDTH width
CONSTRAIN HEIGHT height=LPUB PLI CONSTRAIN HEIGHT height
CONSTRAIN COLS cols=LPUB PLI CONSTRAIN COLS cols
LPub Callout Statements
MARGINS x y=LPUB CALLOUT MARGINS x y=
HORIZONTAL=LPUB CALLOUT HORIZONTAL
VERTICAL=LPUB CALLOUT VERTICAL
SEPARATOR seperator_color separator_width=LPUB CALLOUT SEPARATOR
seperator_color separator_width
-=-
BORDER SQUARE color thickness=LPUB CALLOUT BORDER SQUARE color thickness
BORDER ROUND color thickness radius=LPUB CALLOUT BORDER ROUND color
thickness radius
BORDER MARGINS x y=LPUB CALLOUT BORDER MARGINS x y
BORDERLESS=LPUB CALLOUT BORDERLESS
-=-
BACKGROUND TRANS=LPUB CALLOUT BACKGROUND TRANS
BACKGROUND color=LPUB CALLOUT BACKGROUND color
BACKGROUND [STRETCH] fname=LPUB CALLOUT BACKGROUND [STRETCH] fname
-=-
BEGIN=LPUB CALLOUT BEGIN=LPUB CALLOUT BEGIN=LPUB CALLOUT BEGIN
END=LPUB CALLOUT END=LPUB CALLOUT END=LPUB CALLOUT END
DIVIDER=LPUB CALLOUT DIVIDER
-=-
INSTANCE_COUNT MARGINS x y=LPUB CALLOUT INSTANCE_COUNT MARGINS x y
INSTANCE_COUNT PLACEMENT corner CALLOUT preposition=LPUB CALLOUT
INSTANCE_COUNT PLACEMENT corner CALLOUT preposition
INSTANCE_COUNT PLACEMENT edge CALLOUT INSIDE=LPUB CALLOUT INSTANCE_COUNT
PLACEMENT edge CALLOUT INSIDE
INSTANCE_COUNT PLACEMENT horiz justification CALLOUT OUTSIDE=LPUB
CALLOUT INSTANCE_COUNT PLACEMENT horiz justification CALLOUT OUTSIDE
INSTANCE_COUNT PLACEMENT vert justification CALLOUT OUTSIDE=LPUB CALLOUT
INSTANCE_COUNT PLACEMENT vert justification CALLOUT OUTSIDE
-=-
PLACEMENT CENTER PAGE=LPUB CALLOUT PLACEMENT CENTER PAGE
PLACEMENT corner PAGE=LPUB CALLOUT PLACEMENT corner PAGE
PLACEMENT edge PAGE=LPUB CALLOUT PLACEMENT edge PAGE
PLACEMENT CENTER ASSEM INSIDE=LPUB CALLOUT PLACEMENT CENTER ASSEM INSIDE
PLACEMENT corner ASSEM INSIDE=LPUB CALLOUT PLACEMENT corner ASSEM INSIDE
PLACEMENT edge ASSEM INSIDE=LPUB CALLOUT PLACEMENT edge ASSEM INSIDE
PLACEMENT corner ASSEM OUTSIDE=LPUB CALLOUT PLACEMENT corner ASSEM OUTSIDE
PLACEMENT edge justification ASSEM OUTSIDE=LPUB CALLOUT PLACEMENT edge
justification ASSEM OUTSIDE
PLACEMENT OFFSET x_offset y_offset=LPUB CALLOUT PLACEMENT OFFSET
x_offset y_offset
-=-
POINTER BASE base=LPUB CALLOUT POINTER BASE base
POINTER placement loc assem_x assem_y=
LPub Step Number Statements
PLACEMENT CENTER PAGE=LPUB STEP_NUMBER PLACEMENT CENTER PAGE
PLACEMENT corner PAGE=LPUB STEP_NUMBER PLACEMENT corner PAGE
PLACEMENT edge PAGE=LPUB STEP_NUMBER PLACEMENT edge PAGE
PLACEMENT CENTER ASSEM INSIDE=LPUB STEP_NUMBER PLACEMENT CENTER ASSEM INSIDE
PLACEMENT corner ASSEM INSIDE=LPUB STEP_NUMBER PLACEMENT corner ASSEM INSIDE
PLACEMENT edge ASSEM INSIDE=LPUB STEP_NUMBER PLACEMENT edge ASSEM INSIDE
PLACEMENT corner PLI=LPUB STEP_NUMBER PLACEMENT corner PLI
PLACEMENT edge justification PLI=LPUB STEP_NUMBER PLACEMENT edge
justification PLI
PLACEMENT corner ASSEM OUTSIDE=LPUB STEP_NUMBER PLACEMENT corner ASSEM
OUTSIDE
PLACEMENT edge justification ASSEM OUTSIDE=LPUB STEP_NUMBER PLACEMENT
edge justification ASSEM OUTSIDE
LPub Multi-Step Number Statements
VERTICAL=LPUB MULTI_STEP VERTICAL
HORIZONTAL=LPUB MULTI_STEP HORIZONTAL
MARGINS x y=LPUB MULTI_STEP MARGINS x y
SEPARATOR seperator_color separator_width=LPUB MULTI_STEP SEPARATOR
seperator_color separator_width
BEGIN=LPUB MULTI_STEP BEGIN
DIVIDER=LPUB MULTI_STEP DIVIDER
END=LPUB MULTI_STEP END
LPub Bill Of Material Statements
PART MARGINS x y=LPUB BOM PART MARGINS x y
MARGINS x y=LPUB BOM MARGINS x y
BEGIN IGN=LPUB BOM BEGIN IGN
END=LPUB BOM END
-=-
BORDER SQUARE color thickness=LPUB BOM BORDER SQUARE color thickness
BORDER ROUND color thickness radius=LPUB BOM BORDER ROUND color
thickness radius
BORDERLESS=LPUB BOM BORDERLESS
BORDER MARGINS x y=LPUB BOM BORDER MARGINS x y
-=-
BACKGROUND TRANS=LPUB BOM BACKGROUND TRANS
BACKGROUND color=LPUB BOM BACKGROUND color
BACKGROUND [STRETCH] fname=LPUB BOM BACKGROUND [STRETCH] fname
-=-
CONSTRAIN AREA=LPUB BOM CONSTRAIN AREA
CONSTRAIN SQUARE=LPUB BOM CONSTRAIN SQUARE
CONSTRAIN WIDTH width=LPUB BOM CONSTRAIN WIDTH width
CONSTRAIN HEIGHT height=LPUB BOM CONSTRAIN HEIGHT height
CONSTRAIN COLS cols=LPUB BOM CONSTRAIN COLS cols
-=-
SORT WIDTH=LPUB BOM SORT WIDTH
PACK SUBS=LPUB BOM PACK SUBS
LSynth
SYNTH BEGIN (RIBBED_TUBE |
FLEXIBLE_TUBE |
FLEX_CABLE |
RIGID_TUBE |
ELECTRIC_CABLE |
PNEUMATIC_TUBE |
FLEXIBLE_AXLE |
FIBER_OPTIC_CABLE |
RUBBER_BAND |
CHAIN |
PLASTIC_TREAD |
RUBBER_TREAD)
SYNTH END
SYNTH (INSIDE | OUTSIDE | CROSS | SHOW | HIDE)
SYNTHESIZED BEGIN
SYNTHESIZED END
L3P
L3P IFPOV
L3P IFNOTPOV
L3P ELSEPOV
L3P ENDPOV
LDLite
COLOR
COLOUR
TRANSLATE
ROTATE
SCALE
TRANSFORM
COLORNAME
COLOURNAME
POINT
MATRIX
CMDLINE <line>