|
KiCad PCB EDA Suite
|
One graphic primitive of a symbol body or nested page graphic. More...
#include <orcad_records.h>
Public Attributes | |
| ORCAD_PRIM_KIND | kind = ORCAD_PRIM_KIND::LINE |
| int | x1 = 0 |
| int | y1 = 0 |
| int | x2 = 0 |
| int | y2 = 0 |
| std::optional< ORCAD_POINT > | start |
| arc start point | |
| std::optional< ORCAD_POINT > | end |
| arc end point | |
| std::vector< ORCAD_POINT > | points |
| polygon/polyline/bezier vertices | |
| std::string | text |
| kind == TEXT | |
| int | fontIdx = 0 |
| int | lineStyle = 5 |
| 0 solid, 1 dash, 2 dot, 3 dash-dot, 4 dash-dot-dot, 5 default | |
| int | lineWidth = 3 |
| Capture width enum: 0 thin, 1 medium, 2 wide, 3 default. | |
| int | fillStyle = 1 |
| 0 solid, 1 none, 2 hatch pattern | |
| int | hatchStyle = 0 |
| std::vector< uint8_t > | data |
| kind == IMAGE: raw embedded payload | |
| std::vector< ORCAD_PRIMITIVE > | children |
| kind == GROUP, translated by (x1, y1) | |
One graphic primitive of a symbol body or nested page graphic.
Envelope: doubled u8 type pair, u32 byteLength, u32 zero pad, body. Two byteLength conventions exist in the wild (sometimes mixed within one file): modern records count the u32 size field + 4-byte pad and are followed by a preamble block; legacy records exclude those 8 bytes and have no trailing preamble. Detection is per record: a modern record has the preamble magic right at its claimed end. CommentText uses the exclusive convention in ALL eras (size += 8 unconditionally).
Bodies (after the pad):
Definition at line 360 of file orcad_records.h.
| std::vector<ORCAD_PRIMITIVE> ORCAD_PRIMITIVE::children |
kind == GROUP, translated by (x1, y1)
Definition at line 377 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::addSymbolPrimitive(), ORCAD_CONVERTER::placeGraphics(), and v2PrimBody().
| std::vector<uint8_t> ORCAD_PRIMITIVE::data |
kind == IMAGE: raw embedded payload
Definition at line 376 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::placeBitmap().
| std::optional<ORCAD_POINT> ORCAD_PRIMITIVE::end |
arc end point
Definition at line 368 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::addSymbolArc(), ORCAD_CONVERTER::offsetPage(), ORCAD_CONVERTER::placeDefinitionVectors(), ORCAD_CONVERTER::placeGraphics(), and v2PrimBody().
| int ORCAD_PRIMITIVE::fillStyle = 1 |
0 solid, 1 none, 2 hatch pattern
Definition at line 374 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::addSymbolPrimitive(), and v2PrimBody().
| int ORCAD_PRIMITIVE::fontIdx = 0 |
Definition at line 371 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::addSymbolPrimitive(), ORCAD_CONVERTER::placeGraphics(), and v2PrimBody().
| int ORCAD_PRIMITIVE::hatchStyle = 0 |
Definition at line 375 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::addSymbolPrimitive(), and v2PrimBody().
| ORCAD_PRIM_KIND ORCAD_PRIMITIVE::kind = ORCAD_PRIM_KIND::LINE |
Definition at line 362 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::addSymbolPrimitive(), ORCAD_CONVERTER::placeGraphics(), ORCAD_CONVERTER::synthesizeSymbol(), and v2PrimBody().
| int ORCAD_PRIMITIVE::lineStyle = 5 |
0 solid, 1 dash, 2 dot, 3 dash-dot, 4 dash-dot-dot, 5 default
Definition at line 372 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::placeGraphics(), and v2PrimBody().
| int ORCAD_PRIMITIVE::lineWidth = 3 |
Capture width enum: 0 thin, 1 medium, 2 wide, 3 default.
Definition at line 373 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::placeGraphics(), and v2PrimBody().
| std::vector<ORCAD_POINT> ORCAD_PRIMITIVE::points |
polygon/polyline/bezier vertices
Definition at line 369 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::addSymbolPrimitive(), ORCAD_CONVERTER::offsetPage(), ORCAD_CONVERTER::pageExtentDbu(), ORCAD_CONVERTER::placeDefinitionVectors(), ORCAD_CONVERTER::placeGraphics(), and v2PrimBody().
| std::optional<ORCAD_POINT> ORCAD_PRIMITIVE::start |
arc start point
Definition at line 367 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::addSymbolArc(), ORCAD_CONVERTER::offsetPage(), ORCAD_CONVERTER::placeDefinitionVectors(), ORCAD_CONVERTER::placeGraphics(), and v2PrimBody().
| std::string ORCAD_PRIMITIVE::text |
kind == TEXT
Definition at line 370 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::addSymbolPrimitive(), ORCAD_CONVERTER::placeGraphics(), and v2PrimBody().
| int ORCAD_PRIMITIVE::x1 = 0 |
Definition at line 363 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::addSymbolArc(), ORCAD_CONVERTER::addSymbolPrimitive(), ORCAD_CONVERTER::offsetPage(), ORCAD_CONVERTER::pageExtentDbu(), ORCAD_CONVERTER::placeBitmap(), ORCAD_CONVERTER::placeDefinitionVectors(), ORCAD_CONVERTER::placeGraphics(), ORCAD_CONVERTER::synthesizeSymbol(), and v2PrimBody().
| int ORCAD_PRIMITIVE::x2 = 0 |
Definition at line 365 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::addSymbolArc(), ORCAD_CONVERTER::addSymbolPrimitive(), ORCAD_CONVERTER::offsetPage(), ORCAD_CONVERTER::pageExtentDbu(), ORCAD_CONVERTER::placeBitmap(), ORCAD_CONVERTER::placeDefinitionVectors(), ORCAD_CONVERTER::placeGraphics(), ORCAD_CONVERTER::synthesizeSymbol(), and v2PrimBody().
| int ORCAD_PRIMITIVE::y1 = 0 |
Definition at line 364 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::addSymbolArc(), ORCAD_CONVERTER::addSymbolPrimitive(), ORCAD_CONVERTER::offsetPage(), ORCAD_CONVERTER::pageExtentDbu(), ORCAD_CONVERTER::placeBitmap(), ORCAD_CONVERTER::placeDefinitionVectors(), ORCAD_CONVERTER::placeGraphics(), ORCAD_CONVERTER::synthesizeSymbol(), and v2PrimBody().
| int ORCAD_PRIMITIVE::y2 = 0 |
Definition at line 366 of file orcad_records.h.
Referenced by ORCAD_CONVERTER::addSymbolArc(), ORCAD_CONVERTER::addSymbolPrimitive(), ORCAD_CONVERTER::offsetPage(), ORCAD_CONVERTER::pageExtentDbu(), ORCAD_CONVERTER::placeBitmap(), ORCAD_CONVERTER::placeDefinitionVectors(), ORCAD_CONVERTER::placeGraphics(), ORCAD_CONVERTER::synthesizeSymbol(), and v2PrimBody().