ig:gfx:shapecreator:specification
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
ig:gfx:shapecreator:specification [2021/08/31 14:35] – ig_sb | ig:gfx:shapecreator:specification [2024/04/04 08:04] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
==== IG.GFX.ShapeCreator Format definition and examples ==== | ==== IG.GFX.ShapeCreator Format definition and examples ==== | ||
- | ENGLISH VERSION, [[ig: | + | Please note that the wiki version of the documentation is not up to date. |
+ | |||
+ | Please download the latest version as PDF from the following sources. | ||
+ | |||
+ | Bitte beachten sie, das die Wiki Version der Dokumentation nicht aktuell ist. | ||
+ | |||
+ | Bitte laden sie die aktuelle Version als PDF von den folgenden Quellen. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | {{ :ig: | ||
Shape files are created in JSON format and are therefore subject to the requirements for this format. | Shape files are created in JSON format and are therefore subject to the requirements for this format. | ||
Line 9: | Line 19: | ||
Shape files consist of the following objects on the first level: | Shape files consist of the following objects on the first level: | ||
- | * Scheme (optional), | + | |
- | * General SVG settings (#svg), | + | * General SVG settings (#svg), |
- | * General furniture settings (# | + | * General furniture settings (# |
- | * List of all symbols (Shapes). | + | * List of all symbols (Shapes). |
For all length values: format is **Number**, the decimal separator is a **.** and **m** is expected as unit. | For all length values: format is **Number**, the decimal separator is a **.** and **m** is expected as unit. | ||
Line 33: | Line 43: | ||
| AttachMode | | AttachMode | ||
- | Addendum | + | Attachment |
== Inheritance == | == Inheritance == | ||
Line 41: | Line 51: | ||
**Example** | **Example** | ||
+ | < | ||
+ | { | ||
"# | "# | ||
... | ... | ||
Line 59: | Line 71: | ||
... | ... | ||
} | } | ||
+ | } | ||
+ | </ | ||
=== General furniture settings === | === General furniture settings === | ||
Line 75: | Line 89: | ||
**Notes** | **Notes** | ||
- | * ArmrestWidth should always be specified in the **#common** object. If the value is not known, **0.15** should be used. | + | |
- | * ArmrestWidth is always included in the calculation of the total width, so when determining the width of a couch, the value should be taken into account. | + | * ArmrestWidth is always included in the calculation of the total width, so when determining the width of a couch, the value should be taken into account. |
- | * ArmrestDepth should always be specified in the **#common** object. If the value is not known, **1.00** should be used. | + | * ArmrestDepth should always be specified in the **#common** object. If the value is not known, **1.00** should be used. |
- | * BackseatDepth should always be specified in the **#common** object. If the value is not known, **0.15** should be used. | + | * BackseatDepth should always be specified in the **#common** object. If the value is not known, **0.15** should be used. |
- | * SeatDepth should always be specified in the **#common** object. If the value is not known, **0.85** should be used. | + | * SeatDepth should always be specified in the **#common** object. If the value is not known, **0.85** should be used. |
- | * SeatDepth plus BackseatDepth gives the total depth of the couch. | + | * SeatDepth plus BackseatDepth gives the total depth of the couch. |
**Example** | **Example** | ||
- | `"# | + | < |
- | `" | + | "# |
- | `" | + | |
- | `" | + | |
- | `" | + | |
- | `" | + | |
- | `" | + | |
- | `" | + | |
- | ` | + | |
+ | } | ||
+ | </ | ||
=== Symbols === | === Symbols === | ||
Line 102: | Line 118: | ||
Parts and drawing elements in turn can have defined properties that influence the generation of SVG symbols. | Parts and drawing elements in turn can have defined properties that influence the generation of SVG symbols. | ||
- | BILD | + | {{ : |
**Figure**: Components (red text) and associated drawing elements (black text). | **Figure**: Components (red text) and associated drawing elements (black text). | ||
Line 110: | Line 126: | ||
== Example 1, Stool == | == Example 1, Stool == | ||
- | `" | + | < |
- | | + | " |
- | `" | + | " |
- | `" | + | |
- | `"# | + | |
- | | + | |
- | `}` | + | " |
- | | + | |
- | ` | + | } |
+ | } | ||
+ | </ | ||
A stool usually consists of exactly one component, here **" | A stool usually consists of exactly one component, here **" | ||
- | BILD | + | {{ : |
- | **Image**: Stool with character element #box and the properties | + | **Figure**: Stool with character element #box and the properties |
**Width** and **Depth** are properties of the component **" | **Width** and **Depth** are properties of the component **" | ||
Line 130: | Line 148: | ||
== Example 2, Combination of 2-seater and Recamier == | == Example 2, Combination of 2-seater and Recamier == | ||
- | `" | + | < |
- | | + | " |
- | | + | " |
- | | + | " |
- | | + | "# |
- | | + | " |
- | | + | " |
- | | + | }, |
- | | + | "# |
- | | + | "# |
- | | + | }, |
- | | + | " |
- | | + | " |
- | | + | "# |
- | | + | " |
- | | + | " |
- | | + | " |
- | | + | " |
- | | + | " |
- | | + | }, |
- | | + | "# |
- | | + | " |
- | | + | " |
- | | + | } |
- | ` | + | } |
+ | } | ||
+ | </ | ||
This combination has a total width of 2.8 m and a total depth of 1.35 m (recamiere). The sofa itself is 0.72 m deep with a back section depth of 0.15 m. | This combination has a total width of 2.8 m and a total depth of 1.35 m (recamiere). The sofa itself is 0.72 m deep with a back section depth of 0.15 m. | ||
Line 160: | Line 180: | ||
The combination consists of the components " | The combination consists of the components " | ||
- |  | + | {{ :ig:gfx:shapecreator: |
**Figure**: Combination of several components and elements and the properties (exemplary). | **Figure**: Combination of several components and elements and the properties (exemplary). | ||
Line 170: | Line 190: | ||
The following example shows a corner combination. | The following example shows a corner combination. | ||
- | `" | + | < |
- | | + | " |
- | | + | " |
- | | + | " |
- | | + | " |
- | | + | "# |
- | | + | " |
- | | + | " |
- | | + | }, |
- | | + | "# |
- | | + | "# |
- | | + | }, |
- | | + | " |
- | | + | "# |
- | | + | " |
- | | + | " |
- | | + | " |
- | | + | } |
- | | + | }, |
- | | + | " |
- | | + | " |
- | | + | "# |
- | | + | "# |
- | | + | "# |
- | | + | "# |
- | | + | " |
- | | + | " |
- | | + | } |
- | ` | + | } |
+ | } | ||
+ | </ | ||
For corners it is important to rotate the corresponding parts before corner using the **Rotation** property. In this case it is left aligned corner with a rotation of -90°, for right aligned corners the rotation must be set to 90°. | For corners it is important to rotate the corresponding parts before corner using the **Rotation** property. In this case it is left aligned corner with a rotation of -90°, for right aligned corners the rotation must be set to 90°. | ||
- | ## Component properties | + | === Component properties |
- | Components support the following | + | Components support the following |
| Property | | Property | ||
- | | ------------- | ------ | ------- | ------------------------------------------------------------ | | ||
| Width | Number | 1.0 | Specifies the total width of the component. | | Width | Number | 1.0 | Specifies the total width of the component. | ||
| Depth | Number | 1.0 | Specifies the total depth of the component. | | Depth | Number | 1.0 | Specifies the total depth of the component. | ||
Line 217: | Line 238: | ||
| SeatDepth | | SeatDepth | ||
- | ### Inheritance | + | == Inheritance |
All parts and drawing elements use the values defined in the general #common settings. However, these can be overridden per part (or drawing element) if required, as indicated in the table above. | All parts and drawing elements use the values defined in the general #common settings. However, these can be overridden per part (or drawing element) if required, as indicated in the table above. | ||
- | ## Properties of drawing elements | + | === Properties of drawing elements |
- | * The following drawing elements are defined in the " | + | The following drawing elements are defined in the " |
+ | * #box: a box with width and height and optional round corners | ||
+ | * #seat: a seat with backrest, with the property " | ||
+ | * #armrest: an armrest with optional rounded corners, see overview below | ||
+ | * #corner: corners are special drawing elements to be able to plan combinations around corners | ||
- | * #box | + | Each drawing element can have the following properties: |
- | A box with width and height and optional round corners | + | |
- | * #seat | + | |
- | A seat with backrest | + | |
- | With the property " | + | |
- | * #armrest | + | |
- | An armrest with optional rounded corners, see overview below | + | |
- | * #corner | + | |
- | Corners are special drawing elements to be able to plan combinations around corners | + | |
- | + | ||
- | | + | |
| Property | | Property | ||
- | | ------------- | ------ | -------- | ------------------------------------------------------------ | | ||
| Width | Number | 1.0 | Set width for the drawing element. | | Width | Number | 1.0 | Set width for the drawing element. | ||
| Depth | Number | 1.0 | Set depth for the drawing element. | | Depth | Number | 1.0 | Set depth for the drawing element. | ||
Line 254: | Line 268: | ||
| diameter_3 | | diameter_3 | ||
- | ### RenderMode (Drawing element #seat) | + | == RenderMode (Drawing element # |
The element #seat can take the following representations: | The element #seat can take the following representations: | ||
- | * Mode " | + | |
- | < | + | {{ :ig:gfx:shapecreator: |
- | * Mode " | + | * Mode " |
- | < | + | {{ :ig:gfx:shapecreator: |
- | * Mode " | + | * Mode " |
- | < | + | {{ :ig:gfx:shapecreator: |
- | + | == Orientation (Orientation) | |
- | + | ||
- | ### Orientation (Orientation) | + | |
The following drawing elements support different orientations: | The following drawing elements support different orientations: | ||
- | * Ottomans (#seat plus RenderMode " | + | |
+ | {{ : | ||
- | | + | |
+ | {{:ig:gfx:shapecreator: | ||
- | Ottomans with orientation " | + | == Rounding corners (Drawing element #seat und # |
- | + | ||
- | * Corners (#corner) | + | |
- | <img src=" | + | |
- | + | ||
- | ### Rounding corners (Drawing element #seat und #armrest) | + | |
Seats and armrests support the rounding of the under left (3) and right corner (2). | Seats and armrests support the rounding of the under left (3) and right corner (2). | ||
- | <img src="C:\Users\StueB\Documents\Arbeit\VisualStudio2\ig.gfx.shapecreator\Specification\pCorners.png" style=" | + | {{ :ig:gfx:shapecreator:pcorners.png? |
+ | === Extensions === | ||
+ | Drawing elements can be given various extensions that can be used to display additional functions. These include, for example, a pull-out function, LED lighting or electronic seat depth adjustments. | ||
- | ### Extensions | + | == PullOut == |
- | Drawing elements can be given various extensions that can be used to display additional functions. These include, | + | A PullOut element represents an arrow for displaying |
- | #### PullOut | + | * left (Alignment left), |
+ | {{ : | ||
- | A PullOut element represents an arrow for displaying a pull-out function. With the help of the " | + | * center (Alignment centered) and |
+ | {{ : | ||
- | * left (Alignment | + | |
- | < | + | {{ :ig:gfx: |
- | * center (Alignment centered) and | + | |
- | <img src=" | + | |
- | * right (Alignment right) | + | |
- | <img src=" | + | |
ig/gfx/shapecreator/specification.1630413317.txt.gz · Last modified: 2024/04/04 08:04 (external edit)