KiCad PCB EDA Suite
Loading...
Searching...
No Matches
BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS Struct Reference

Per-shape indices into m_params. More...

Public Attributes

PCB_SHAPEshape = nullptr
 
PCB_DIMENSION_BASEdimension = nullptr
 set instead of shape for a POINT_PAIR
 
SHAPE_KIND kind = SHAPE_KIND::SEGMENT
 
int startX = -1
 start.x (segment) / center.x (circle, arc, ellipse).
 
int endX = -1
 end.x (segment only).
 
int radius = -1
 radius scalar (circle, arc) / minor radius (ellipse).
 
int focusX = -1
 first focus.x (ellipse kinds only).
 
int arcStartX = -1
 arc start-point.x.
 
int arcEndX = -1
 arc end-point.x.
 
int startAngle = -1
 arc start angle (radians).
 
int endAngle = -1
 arc end angle (radians).
 
int fixedLengthParam = -1
 param index of a driving fixed-length target, or -1.
 
int vertexCount = 0
 Outline-0 vertex count of a POLYGON vertex i x param is startX plus 2 times i.
 
bool startIsLeft = true
 Rect corner roles frozen at Build so VERTEX 0 to 3 as TL TR BR BL bind the same physical corners whatever the stored start end order.
 
bool startIsTop = true
 

Detailed Description

Per-shape indices into m_params.

A segment stores start/end; a circle stores center (startX) + radius; an arc stores center (startX) + radius + endpoints + sweep angles, all tied together by an ArcRules solver constraint. An ellipse stores center (startX) + first focus + minor radius (the GCS parameterization); an elliptical arc adds endpoints + sweep angles tied by ArcOfEllipseRules.

Definition at line 206 of file board_constraint_adapter.h.

Member Data Documentation

◆ arcEndX

int BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS::arcEndX = -1

◆ arcStartX

int BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS::arcStartX = -1

◆ dimension

PCB_DIMENSION_BASE* BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS::dimension = nullptr

set instead of shape for a POINT_PAIR

Definition at line 209 of file board_constraint_adapter.h.

Referenced by BOARD_CONSTRAINT_ADAPTER::Build().

◆ endAngle

int BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS::endAngle = -1

arc end angle (radians).

Definition at line 218 of file board_constraint_adapter.h.

Referenced by BOARD_CONSTRAINT_ADAPTER::Build().

◆ endX

int BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS::endX = -1

◆ fixedLengthParam

int BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS::fixedLengthParam = -1

param index of a driving fixed-length target, or -1.

Definition at line 219 of file board_constraint_adapter.h.

Referenced by BOARD_CONSTRAINT_ADAPTER::Solve().

◆ focusX

int BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS::focusX = -1

first focus.x (ellipse kinds only).

Definition at line 214 of file board_constraint_adapter.h.

Referenced by BOARD_CONSTRAINT_ADAPTER::Build().

◆ kind

◆ radius

int BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS::radius = -1

radius scalar (circle, arc) / minor radius (ellipse).

Definition at line 213 of file board_constraint_adapter.h.

Referenced by BOARD_CONSTRAINT_ADAPTER::Build(), BOARD_CONSTRAINT_ADAPTER::holdArcRadius(), and BOARD_CONSTRAINT_ADAPTER::Solve().

◆ shape

PCB_SHAPE* BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS::shape = nullptr

Definition at line 208 of file board_constraint_adapter.h.

Referenced by BOARD_CONSTRAINT_ADAPTER::Build().

◆ startAngle

int BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS::startAngle = -1

arc start angle (radians).

Definition at line 217 of file board_constraint_adapter.h.

Referenced by BOARD_CONSTRAINT_ADAPTER::Build().

◆ startIsLeft

bool BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS::startIsLeft = true

Rect corner roles frozen at Build so VERTEX 0 to 3 as TL TR BR BL bind the same physical corners whatever the stored start end order.

Definition at line 226 of file board_constraint_adapter.h.

Referenced by BOARD_CONSTRAINT_ADAPTER::anchorParams(), and BOARD_CONSTRAINT_ADAPTER::Build().

◆ startIsTop

bool BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS::startIsTop = true

◆ startX

int BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS::startX = -1

◆ vertexCount

int BOARD_CONSTRAINT_ADAPTER::SHAPE_VARS::vertexCount = 0

Outline-0 vertex count of a POLYGON vertex i x param is startX plus 2 times i.

Definition at line 222 of file board_constraint_adapter.h.

Referenced by BOARD_CONSTRAINT_ADAPTER::anchorParams(), BOARD_CONSTRAINT_ADAPTER::Build(), and BOARD_CONSTRAINT_ADAPTER::pinDraggedShapeRest().


The documentation for this struct was generated from the following file: