|
KiCad PCB EDA Suite
|
Public Member Functions | |
| POLY_SHAPE_MOCK () | |
| virtual EDA_ITEM * | AsEdaItem () |
| void | SwapShape (EDA_SHAPE *aImage) |
| void | Serialize (google::protobuf::Any &aContainer) const override |
| Serializes this object to the given Any message. | |
| void | Serialize (google::protobuf::Any &aContainer, const EDA_IU_SCALE &aScale) const |
| void | Serialize (kiapi::common::types::GraphicShape &aOutput, const EDA_IU_SCALE &aScale) const |
| bool | Deserialize (const google::protobuf::Any &aContainer) override |
| Deserializes the given protobuf message into this object. | |
| bool | Deserialize (const google::protobuf::Any &aContainer, const EDA_IU_SCALE &aScale) |
| bool | Deserialize (const kiapi::common::types::GraphicShape &aInput, const EDA_IU_SCALE &aScale) |
| wxString | ShowShape () const |
| wxString | SHAPE_T_asString () const |
| virtual bool | IsProxyItem () const |
| virtual void | SetIsProxyItem (bool aIsProxy=true) |
| bool | IsAnyFill () const |
| bool | IsSolidFill () const |
| bool | IsHatchedFill () const |
| virtual bool | IsFilledForHitTesting () const |
| virtual void | SetFilled (bool aFlag) |
| void | SetFillMode (FILL_T aFill) |
| FILL_T | GetFillMode () const |
| void | SetFillModeProp (UI_FILL_MODE) |
| UI_FILL_MODE | GetFillModeProp () const |
| void | SetHatchingDirty () |
| const SHAPE_POLY_SET & | GetHatching () const |
| const std::vector< SEG > & | GetHatchLines () const |
| bool | IsClosed () const |
| COLOR4D | GetFillColor () const |
| void | SetFillColor (const COLOR4D &aColor) |
| virtual void | SetWidth (int aWidth) |
| virtual int | GetWidth () const |
| virtual int | GetEffectiveWidth () const |
| virtual int | GetHatchLineWidth () const |
| virtual int | GetHatchLineSpacing () const |
| void | SetLineStyle (const LINE_STYLE aStyle) |
| LINE_STYLE | GetLineStyle () const |
| void | SetLineColor (const COLOR4D &aColor) |
| COLOR4D | GetLineColor () const |
| virtual void | SetShape (SHAPE_T aShape) |
| SHAPE_T | GetShape () const |
| const LINE_ENDING & | GetStartEnding () const |
| void | SetStartEnding (const LINE_ENDING &aEnding) |
| const LINE_ENDING & | GetEndEnding () const |
| void | SetEndEnding (const LINE_ENDING &aEnding) |
| LINE_ENDING_STYLE | GetStartEndingStyle () const |
| void | SetStartEndingStyle (LINE_ENDING_STYLE aStyle) |
| LINE_ENDING_STYLE | GetEndEndingStyle () const |
| void | SetEndEndingStyle (LINE_ENDING_STYLE aStyle) |
| int | GetStartEndingLength () const |
| void | SetStartEndingLength (int aLength) |
| int | GetStartEndingWidth () const |
| void | SetStartEndingWidth (int aWidth) |
| int | GetEndEndingLength () const |
| void | SetEndEndingLength (int aLength) |
| int | GetEndEndingWidth () const |
| void | SetEndEndingWidth (int aWidth) |
| int | GetStartEndingStrokeWidth () const |
| void | SetStartEndingStrokeWidth (int aWidth) |
| int | GetEndEndingStrokeWidth () const |
| void | SetEndEndingStrokeWidth (int aWidth) |
| void | GetEndingTangents (EDA_ANGLE &aStartTangent, EDA_ANGLE &aEndTangent, int aLineWidth=0) const |
| Compute outward-facing tangent angles at the start and end of the shape. | |
| bool | GetLineEndingEndpoints (VECTOR2I &aStartPoint, VECTOR2I &aEndPoint) const |
| Return the source endpoints used to place line endings. | |
| bool | ShortenArcForEndings (EDA_ANGLE &aStartAngle, EDA_ANGLE &aArcAngle, double aRadius, int aLineWidth) const |
| Shorten an arc body for line endings. | |
| std::optional< BEZIER< double > > | ShortenedBezierCurve (int aLineWidth) const |
| Return the cubic Bezier curve shortened for line endings. | |
| std::vector< VECTOR2D > | ShortenedBezierPolyline (int aLineWidth) const |
| Return the flattened Bezier polyline after line-ending shortening. | |
| bool | ShortenPolyForEndings (VECTOR2D &aFirst, VECTOR2D &aLast, const VECTOR2D &aSecond, const VECTOR2D &aPenultimate, int aLineWidth) const |
| bool | ShortenBodyPolyPoints (std::vector< VECTOR2I > &aPoints, int aOutlineIdx, int aLineWidth) const |
| Apply line-ending body shortening to copied/generated polyline points. | |
| bool | GetShortenedBodyPolyPoints (const SHAPE_LINE_CHAIN &aOutline, int aOutlineIdx, std::vector< VECTOR2I > &aPoints, int aLineWidth) const |
| Copy an outline and apply line-ending body shortening when applicable. | |
| const VECTOR2I & | GetStart () const |
| Return the starting point of the graphic. | |
| int | GetStartY () const |
| int | GetStartX () const |
| virtual void | SetStart (const VECTOR2I &aStart) |
| void | SetStartY (int y) |
| void | SetStartX (int x) |
| void | SetCenterY (int y) |
| void | SetCenterX (int x) |
| const VECTOR2I & | GetEnd () const |
| Return the ending point of the graphic. | |
| int | GetEndY () const |
| int | GetEndX () const |
| virtual void | SetEnd (const VECTOR2I &aEnd) |
| void | SetEndY (int aY) |
| void | SetEndX (int aX) |
| void | SetRadius (int aX) |
| virtual VECTOR2I | GetTopLeft () const |
| virtual VECTOR2I | GetBotRight () const |
| virtual void | SetTop (int val) |
| virtual void | SetLeft (int val) |
| virtual void | SetRight (int val) |
| virtual void | SetBottom (int val) |
| virtual void | SetBezierC1 (const VECTOR2I &aPt) |
| const VECTOR2I & | GetBezierC1 () const |
| virtual void | SetBezierC2 (const VECTOR2I &aPt) |
| const VECTOR2I & | GetBezierC2 () const |
| virtual void | SetEllipseCenter (const VECTOR2I &aPt) |
| const VECTOR2I & | GetEllipseCenter () const |
| virtual void | SetEllipseMajorRadius (int aR) |
| int | GetEllipseMajorRadius () const |
| virtual void | SetEllipseMinorRadius (int aR) |
| int | GetEllipseMinorRadius () const |
| virtual void | SetEllipseRotation (const EDA_ANGLE &aA) |
| EDA_ANGLE | GetEllipseRotation () const |
| virtual void | SetEllipseStartAngle (const EDA_ANGLE &aA) |
| EDA_ANGLE | GetEllipseStartAngle () const |
| virtual void | SetEllipseEndAngle (const EDA_ANGLE &aA) |
| EDA_ANGLE | GetEllipseEndAngle () const |
| const ELLIPSE< int > & | GetEllipse () const |
| Direct read-only access to the underlying ellipse payload. | |
| VECTOR2I | getCenter () const |
| virtual void | SetCenter (const VECTOR2I &aCenter) |
| void | SetArcAngleAndEnd (const EDA_ANGLE &aAngle, bool aCheckNegativeAngle=false) |
| Set the end point from the angle center and start. | |
| virtual void | SetArcAngle (const EDA_ANGLE &aAngle) |
| EDA_ANGLE | GetArcAngle () const |
| EDA_ANGLE | GetSegmentAngle () const |
| bool | EndsSwapped () const |
| Have the start and end points been swapped since they were set? | |
| VECTOR2I | GetArcMid () const |
| std::vector< VECTOR2I > | GetRectCorners () const |
| virtual std::vector< VECTOR2I > | GetCornersInSequence (EDA_ANGLE angle) const |
| void | CalcArcAngles (EDA_ANGLE &aStartAngle, EDA_ANGLE &aEndAngle) const |
| Calc arc start and end angles such that aStartAngle < aEndAngle. | |
| int | GetRadius () const |
| virtual void | SetArcGeometry (const VECTOR2I &aStart, const VECTOR2I &aMid, const VECTOR2I &aEnd) |
| Set the three controlling points for an arc. | |
| void | SetArcOrSegment (const VECTOR2I &aStart, const VECTOR2I &aMid, const VECTOR2I &aEnd) |
| Set the shape from three points, falling back to a SEGMENT from aStart to aEnd when the points are collinear and so have no finite arc center. | |
| void | SetCachedArcData (const VECTOR2I &aStart, const VECTOR2I &aMid, const VECTOR2I &aEnd, const VECTOR2I &aCenter) |
| Set the data used for mid point caching. | |
| const std::vector< VECTOR2I > & | GetBezierPoints () const |
| std::vector< VECTOR2I > | GetPolyPoints () const |
| Duplicate the polygon outlines into a flat list of VECTOR2I points. | |
| int | GetPointCount () const |
| SHAPE_POLY_SET & | GetPolyShape () |
| const SHAPE_POLY_SET & | GetPolyShape () const |
| bool | IsPolyShapeValid () const |
| virtual void | SetPolyShape (const SHAPE_POLY_SET &aShape) |
| void | SetPolyPoints (const std::vector< VECTOR2I > &aPoints) |
| void | RebuildBezierToSegmentsPointsList (int aMaxError) |
| Rebuild the m_bezierPoints vertex list that approximate the Bezier curve by a list of segments. | |
| void | RebuildBezierToSegmentsPointsList () |
| virtual std::vector< SHAPE * > | MakeEffectiveShapes (bool aEdgeOnly=false) const |
| Make a set of SHAPE objects representing the EDA_SHAPE. | |
| std::vector< SHAPE * > | MakeLineEndingEffectiveShapes (int aLineWidth) const |
| Make the line-ending geometry associated with this shape. | |
| std::vector< SHAPE * > | MakeEffectiveShapesWithLineEndings (int aLineWidth) const |
| Make effective geometry for the shape body shortened for line endings plus the line-ending geometry itself. | |
| virtual std::vector< SHAPE * > | MakeEffectiveShapesForHitTesting () const |
| std::vector< SHAPE * > | MakeEffectiveShapesForStroking (int aLineWidth=-1) const |
| Make a set of SHAPE objects to hand to STROKE_PARAMS::Stroke(). | |
| void | ShapeGetMsgPanelInfo (EDA_DRAW_FRAME *aFrame, std::vector< MSG_PANEL_ITEM > &aList) |
| void | SetRectangleHeight (const int &aHeight) |
| void | SetRectangleWidth (const int &aWidth) |
| void | SetRectangle (const long long int &aHeight, const long long int &aWidth) |
| virtual void | SetCornerRadius (int aRadius) |
| int | GetCornerRadius () const |
| bool | IsClockwiseArc () const |
| double | GetLength () const |
| int | GetRectangleHeight () const |
| int | GetRectangleWidth () const |
| virtual void | UpdateHatching () const |
| void | TransformShapeToPolygon (SHAPE_POLY_SET &aBuffer, int aClearance, int aError, ERROR_LOC aErrorLoc, bool ignoreLineWidth=false, bool includeFill=false) const |
| Convert the shape to a closed polygon. | |
| void | TransformLineEndingsToPolygon (SHAPE_POLY_SET &aBuffer, int aClearance, int aError, ERROR_LOC aErrorLoc, int aLineWidth) const |
| Append only the line-ending geometry associated with this shape to a polygon set. | |
| void | TransformWithLineEndingsToPolygon (SHAPE_POLY_SET &aBuffer, int aClearance, int aError, ERROR_LOC aErrorLoc, bool ignoreLineWidth=false) const |
| Convert the shape body shortened for line endings plus line-ending geometry to polygons. | |
| bool | GetLineEndingsBoundingBox (BOX2I &aBBox, int aLineWidth) const |
| int | Compare (const EDA_SHAPE *aOther) const |
| double | Similarity (const EDA_SHAPE &aOther) const |
| bool | operator== (const EDA_SHAPE &aOther) const |
Static Public Member Functions | |
| static bool | ShortenSegmentForEndings (VECTOR2I &aStart, VECTOR2I &aEnd, const LINE_ENDING &aStartEnding, const LINE_ENDING &aEndEnding, int aLineWidth) |
| Shorten a segment body for line endings. | |
Protected Member Functions | |
| wxString | getFriendlyName (FRAME_T aFrameType) const |
| void | setPosition (const VECTOR2I &aPos) |
| VECTOR2I | getPosition () const |
| virtual void | setFilled (bool aFlag) |
| virtual SHAPE_POLY_SET | getHatchingKnockouts () const |
| void | move (const VECTOR2I &aMoveVector) |
| void | rotate (const VECTOR2I &aRotCentre, const EDA_ANGLE &aAngle) |
| void | flip (const VECTOR2I &aCentre, FLIP_DIRECTION aFlipDirection) |
| void | scale (double aScale) |
| virtual EDA_ANGLE | getDrawRotation () const |
| const BOX2I | getBoundingBox () const |
| void | computeArcBBox (BOX2I &aBBox) const |
| bool | hitTest (const VECTOR2I &aPosition, int aAccuracy=0) const |
| bool | hitTest (const BOX2I &aRect, bool aContained, int aAccuracy=0) const |
| bool | hitTest (const SHAPE_LINE_CHAIN &aPoly, bool aContained) const |
| const std::vector< VECTOR2I > | buildBezierToSegmentsPointsList (int aMaxError) const |
| void | beginEdit (const VECTOR2I &aStartPoint) |
| bool | continueEdit (const VECTOR2I &aPosition) |
| void | calcEdit (const VECTOR2I &aPosition) |
| void | endEdit (bool aClosed=true) |
| Finish editing the shape. | |
| void | setEditState (int aState) |
| virtual bool | isMoving () const |
| std::vector< SHAPE * > | makeEffectiveShapes (bool aEdgeOnly, bool aLineChainOnly=false, bool aHittesting=false) const |
| Make a set of SHAPE objects representing the EDA_SHAPE. | |
| std::vector< SHAPE * > | makeShortenedBodyShapes (int aLineWidth, bool aEdgeOnly=false) const |
| Make effective geometry for the shape body shortened for line endings, without the line-ending geometry itself. | |
| SHAPE_ELLIPSE | buildShapeEllipse () const |
| void | recalcEllipseArcEndpoints () |
| When m_shape == ELLIPSE_ARC, recompute m_start/m_end from m_ellipse. | |
| virtual int | getMaxError () const |
| SHAPE_POLY_SET & | hatching () const |
| std::vector< SEG > & | hatchLines () const |
Protected Attributes | |
| bool | m_endsSwapped |
| SHAPE_T | m_shape |
| STROKE_PARAMS | m_stroke |
| LINE_ENDING | m_startEnding |
| LINE_ENDING | m_endEnding |
| LINE_ENDING | m_blankEnding |
| FILL_T | m_fill |
| COLOR4D | m_fillColor |
| std::unique_ptr< EDA_SHAPE_HATCH_CACHE_DATA > | m_hatchingCache |
| bool | m_hatchingDirty |
| long long int | m_rectangleHeight |
| long long int | m_rectangleWidth |
| int | m_cornerRadius |
| VECTOR2I | m_start |
| VECTOR2I | m_end |
| VECTOR2I | m_arcCenter |
| ARC_MID | m_arcMidData |
| VECTOR2I | m_bezierC1 |
| VECTOR2I | m_bezierC2 |
| std::vector< VECTOR2I > | m_bezierPoints |
| ELLIPSE< int > | m_ellipse |
| std::unique_ptr< SHAPE_POLY_SET > | m_poly |
| int | m_editState |
| bool | m_proxyItem |
Definition at line 172 of file test_edit_relations.cpp.
|
inline |
Definition at line 175 of file test_edit_relations.cpp.
References EDA_SHAPE::EDA_SHAPE(), NO_FILL, and POLY.
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE, and SCH_SHAPE.
Definition at line 100 of file eda_shape.h.
References AsEdaItem().
Referenced by AsEdaItem(), formatArc(), formatBezier(), formatCircle(), formatEllipse(), formatEllipseArc(), formatPoly(), and formatRect().
|
protectedinherited |
Definition at line 3101 of file eda_shape.cpp.
References ANGLE_0, ANGLE_360, SHAPE_LINE_CHAIN::Append(), ARC, BEZIER, CIRCLE, ELLIPSE, ELLIPSE_ARC, getMaxError(), GetPolyShape(), GetShape(), m_editState, SHAPE_POLY_SET::NewOutline(), SHAPE_POLY_SET::Outline(), POLY, RebuildBezierToSegmentsPointsList(), RECTANGLE, SEGMENT, SetArcGeometry(), SetBezierC1(), SetBezierC2(), SHAPE_LINE_CHAIN::SetClosed(), SetEllipseCenter(), SetEllipseEndAngle(), SetEllipseMajorRadius(), SetEllipseMinorRadius(), SetEllipseRotation(), SetEllipseStartAngle(), SetEnd(), SetStart(), SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by PCB_SHAPE::BeginEdit(), and SCH_SHAPE::BeginEdit().
|
protectedinherited |
Definition at line 1226 of file eda_shape.cpp.
References BEZIER_POLY::GetPoly(), m_bezierC1, m_bezierC2, m_end, and m_start.
Referenced by makeEffectiveShapes(), MakeEffectiveShapesForStroking(), and RebuildBezierToSegmentsPointsList().
|
protectedinherited |
Definition at line 1239 of file eda_shape.cpp.
References ELLIPSE_ARC, m_ellipse, and m_shape.
Referenced by getBoundingBox(), GetLength(), hitTest(), hitTest(), makeEffectiveShapes(), MakeEffectiveShapesForStroking(), makeShortenedBodyShapes(), SCH_SHAPE::Plot(), TransformShapeToPolygon(), TransformWithLineEndingsToPolygon(), and UpdateHatching().
Calc arc start and end angles such that aStartAngle < aEndAngle.
Each may be between -360.0 and 360.0.
Definition at line 1364 of file eda_shape.cpp.
References ANGLE_360, getCenter(), GetEnd(), and GetStart().
Referenced by CREEPAGE_GRAPH::Addshape(), BOARD_ADAPTER::addShape(), computeArcBBox(), KIGFX::PCB_PAINTER::draw(), GetArcAngle(), hitTest(), makeShortenedBodyShapes(), BRDITEMS_PLOTTER::PlotShape(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveArc(), SegmentIntersectsBoard(), CREEPAGE_GRAPH::TransformEdgeToCreepShapes(), and TransformWithLineEndingsToPolygon().
|
protectedinherited |
Definition at line 3205 of file eda_shape.cpp.
References std::abs(), ANGLE_0, ANGLE_180, ANGLE_360, ANGLE_90, ARC, BEZIER, center, CIRCLE, EDA_ANGLE::Cos(), VECTOR2< T >::Distance(), ELLIPSE, ELLIPSE_ARC, GetArcAngle(), GetEnd(), getMaxError(), GetPointCount(), GetPolyShape(), GetRadius(), GetShape(), GetStart(), IsStraightArc(), KiROUND(), m_arcCenter, m_editState, m_ellipse, m_end, m_start, SHAPE_POLY_SET::Outline(), POLY, RADIANS_T, radius, RebuildBezierToSegmentsPointsList(), RECTANGLE, SEGMENT, SetArcGeometry(), SetBezierC1(), SetBezierC2(), SetEllipseCenter(), SetEllipseEndAngle(), SetEllipseMajorRadius(), SetEllipseMinorRadius(), SetEllipseRotation(), SetEllipseStartAngle(), SetEnd(), SHAPE_LINE_CHAIN::SetPoint(), SetStart(), SHAPE_T_asString(), EDA_ANGLE::Sin(), sq, VECTOR2< T >::SquaredEuclideanNorm(), UNIMPLEMENTED_FOR, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by PCB_SHAPE::CalcEdit(), and SCH_SHAPE::CalcEdit().
|
inherited |
Definition at line 3550 of file eda_shape.cpp.
References ARC, EDA_ANGLE::AsTenthsOfADegree(), BEZIER, ELLIPSE< NumericType >::Center, SHAPE_POLY_SET::CVertex(), EDA_SHAPE(), ELLIPSE, ELLIPSE_ARC, ELLIPSE< NumericType >::EndAngle, GetArcMid(), STROKE_PARAMS::GetLineStyle(), GetPolyShape(), STROKE_PARAMS::GetWidth(), m_bezierC1, m_bezierC2, m_bezierPoints, m_cornerRadius, m_ellipse, m_end, m_fill, m_shape, m_start, m_stroke, ELLIPSE< NumericType >::MajorRadius, ELLIPSE< NumericType >::MinorRadius, POLY, RECTANGLE, ELLIPSE< NumericType >::Rotation, ELLIPSE< NumericType >::StartAngle, TEST, TEST_E, TEST_PT, and SHAPE_POLY_SET::TotalVertices().
Referenced by SCH_SHAPE::compare(), and BOARD::cmp_drawings::operator()().
|
protectedinherited |
Definition at line 2272 of file eda_shape.cpp.
References ANGLE_0, ANGLE_180, ANGLE_270, ANGLE_90, CalcArcAngles(), GetRadius(), IsAnyFill(), m_arcCenter, m_end, m_start, BOX2< Vec >::Merge(), EDA_ANGLE::Normalize(), radius, and BOX2< Vec >::SetOrigin().
Referenced by getBoundingBox().
|
protectedinherited |
Definition at line 3165 of file eda_shape.cpp.
References SHAPE_LINE_CHAIN::Append(), ARC, BEZIER, CIRCLE, SHAPE_LINE_CHAIN::CLastPoint(), SHAPE_LINE_CHAIN::CPoint(), ELLIPSE, ELLIPSE_ARC, SHAPE_LINE_CHAIN::GetPointCount(), GetPolyShape(), GetShape(), m_editState, SHAPE_POLY_SET::Outline(), POLY, RECTANGLE, SEGMENT, SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by PCB_SHAPE::ContinueEdit(), and SCH_SHAPE::ContinueEdit().
|
overridevirtualinherited |
Deserializes the given protobuf message into this object.
| aContainer | is an Any which should have a concrete type matching this object |
Reimplemented from SERIALIZABLE.
Reimplemented in PCB_SHAPE, PCB_TABLECELL, PCB_TEXTBOX, SCH_RULE_AREA, SCH_SHAPE, SCH_TABLECELL, and SCH_TEXTBOX.
Definition at line 363 of file eda_shape.cpp.
References Deserialize(), and pcbIUScale.
Referenced by Deserialize(), Deserialize(), PCB_SHAPE::Deserialize(), SCH_RULE_AREA::Deserialize(), and SCH_SHAPE::Deserialize().
|
inherited |
Definition at line 466 of file eda_shape.cpp.
References Deserialize().
|
inherited |
Definition at line 369 of file eda_shape.cpp.
References ARC, BEZIER, CIRCLE, DEGREES_T, ELLIPSE, ELLIPSE_ARC, FromProtoEnum(), getMaxError(), m_arcCenter, m_arcMidData, m_bezierC1, m_bezierC2, m_editState, m_end, m_endEnding, m_endsSwapped, m_fillColor, m_proxyItem, m_start, m_startEnding, m_stroke, POLY, RebuildBezierToSegmentsPointsList(), RECTANGLE, SEGMENT, SetArcGeometry(), SetBezierC1(), SetBezierC2(), SetCornerRadius(), SetEllipseCenter(), SetEllipseEndAngle(), SetEllipseMajorRadius(), SetEllipseMinorRadius(), SetEllipseRotation(), SetEllipseStartAngle(), SetEnd(), SetFillColor(), SetFillMode(), SetPolyShape(), SetShape(), SetStart(), kiapi::common::UnpackColor(), kiapi::common::UnpackDistance(), kiapi::common::UnpackLineEnding(), kiapi::common::UnpackPolySet(), kiapi::common::UnpackStroke(), kiapi::common::UnpackVector2(), and COLOR4D::UNSPECIFIED.
|
protectedinherited |
Finish editing the shape.
| aClosed | Should polygon shapes be closed (yes for pcbnew/fpeditor, no for libedit). |
Definition at line 3487 of file eda_shape.cpp.
References ARC, BEZIER, CIRCLE, SHAPE_LINE_CHAIN::CLastPoint(), SHAPE_LINE_CHAIN::CPoint(), ELLIPSE, ELLIPSE_ARC, SHAPE_LINE_CHAIN::GetPointCount(), GetPolyShape(), GetShape(), m_editState, SHAPE_POLY_SET::Outline(), POLY, recalcEllipseArcEndpoints(), RECTANGLE, SHAPE_LINE_CHAIN::Remove(), SEGMENT, SHAPE_LINE_CHAIN::SetClosed(), SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by PCB_SHAPE::EndEdit(), and SCH_SHAPE::EndEdit().
|
inlineinherited |
Have the start and end points been swapped since they were set?
Definition at line 460 of file eda_shape.h.
References m_endsSwapped.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and BOOST_AUTO_TEST_CASE().
|
protectedinherited |
Definition at line 1161 of file eda_shape.cpp.
References ARC, BEZIER, CIRCLE, ELLIPSE, ELLIPSE_ARC, getMaxError(), GetPolyShape(), m_arcCenter, m_bezierC1, m_bezierC2, m_ellipse, m_end, m_hatchingDirty, m_shape, m_start, MIRROR(), SHAPE_POLY_SET::Mirror(), POLY, RebuildBezierToSegmentsPointsList(), recalcEllipseArcEndpoints(), RECTANGLE, SEGMENT, SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by PCB_SHAPE::Flip(), PCB_SHAPE::Mirror(), SCH_SHAPE::MirrorHorizontally(), and SCH_SHAPE::MirrorVertically().
|
inherited |
Definition at line 1471 of file eda_shape.cpp.
References CalcArcAngles().
Referenced by BOARD_CONSTRAINT_ADAPTER::ApplyReferenceValues(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), calcEdit(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), GENCAD_EXPORTER::footprintWriteShape(), GetArcMid(), GetLength(), idf_append_shape(), makeEffectiveShapes(), BRDITEMS_PLOTTER::PlotShape(), OUTSET_ROUTINE::ProcessItem(), CONSTRAINT_OVERLAY::render(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), ShapeGetMsgPanelInfo(), AR_MATRIX::TracePcbShape(), and CREEPAGE_OVERLAY::Update().
|
inherited |
Definition at line 1351 of file eda_shape.cpp.
References GetArcAngle(), m_arcCenter, m_arcMidData, m_end, m_start, and RotatePoint().
Referenced by PCB_GRID_HELPER::AddConstructionItems(), PCB_POINT_EDITOR::addCorner(), PAD::AddPrimitive(), ArcTangentSeedAt(), BoardItemIntersectable(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), KI_TEST::CheckFpShape(), Compare(), ConnectBoardShapes(), CONVERT_TOOL::CreateLines(), editArcMidKeepEndpoints(), PCB_WRITER_V10::format(), PCB_WRITER_V9::format(), formatArc(), formatArc(), formatArc(), PCB_SHAPE::GetConnectionPoints(), PCB_SHAPE::GetFocusPosition(), PCB_SHAPE::GetLibraryArcMid(), GRAPH_CONNECTION::GetShapes(), GraphicEditArc(), hash_fp_item(), IsClockwiseArc(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadArc(), CONVERT_TOOL::makePolysFromChainedSegs(), SCH_CONNECTIVITY::LIBRARY_SHAPE_FACT::operator==(), SCH_SHAPE::Plot(), processShapeSegment(), CONVERT_TOOL::SegmentToArc(), Serialize(), SetArcGeometry(), PCB_SHAPE::syncLibCoords(), tangentAtEndpoint(), PLOTTER::ThickArc(), CREEPAGE_GRAPH::TransformEdgeToCreepShapes(), TransformShapeToPolygon(), and ARC_GEOM_SYNCER::updateSME().
|
inlineinherited |
Definition at line 373 of file eda_shape.h.
References m_bezierC1.
Referenced by PAD::AddPrimitive(), PCB_IO_IPC2581::addShape(), ArcTangentSeedAt(), GRAPHICS_CLEANER::areEquivalent(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), KI_TEST::CheckFpShape(), ConnectBoardShapes(), PCB_IO_KICAD_SEXPR::format(), PCB_WRITER_V10::format(), PCB_WRITER_V9::format(), formatBezier(), formatBezier(), formatBezier(), GetEndingTangents(), PCB_SHAPE::GetLibraryBezierC1(), hash_fp_item(), hashShape(), KICAD_FORMAT::LEGACY::orderFpShapes(), SCH_SHAPE::Plot(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveBezier(), Serialize(), GRAPHICS_IMPORTER::setupSplineOrLine(), PCB_SHAPE::syncLibCoords(), TransformShapeToPolygon(), and BEZIER_GEOM_SYNCER::updateBezier().
|
inlineinherited |
Definition at line 376 of file eda_shape.h.
References m_bezierC2.
Referenced by PAD::AddPrimitive(), PCB_IO_IPC2581::addShape(), ArcTangentSeedAt(), GRAPHICS_CLEANER::areEquivalent(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), KI_TEST::CheckFpShape(), ConnectBoardShapes(), PCB_IO_KICAD_SEXPR::format(), PCB_WRITER_V10::format(), PCB_WRITER_V9::format(), formatBezier(), formatBezier(), formatBezier(), GetEndingTangents(), PCB_SHAPE::GetLibraryBezierC2(), hash_fp_item(), hashShape(), KICAD_FORMAT::LEGACY::orderFpShapes(), SCH_SHAPE::Plot(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveBezier(), Serialize(), GRAPHICS_IMPORTER::setupSplineOrLine(), PCB_SHAPE::syncLibCoords(), TransformShapeToPolygon(), and BEZIER_GEOM_SYNCER::updateBezier().
|
inlineinherited |
Definition at line 505 of file eda_shape.h.
References m_bezierPoints.
Referenced by FEATURES_MANAGER::AddShape(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BuildCreepageBoardEdges(), GetEndingTangents(), GetLineEndingEndpoints(), idf_append_shape(), GRAPHICS_CLEANER::isNullShape(), makeBezierChain(), CONVERT_TOOL::makePolysFromChainedSegs(), SCH_CONNECTIVITY::LIBRARY_SHAPE_FACT::operator==(), processShapeSegment(), CONSTRAINT_OVERLAY::render(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), and GRAPHICS_IMPORTER::setupSplineOrLine().
|
inlinevirtualinherited |
Reimplemented in PCB_TEXTBOX.
Definition at line 365 of file eda_shape.h.
References GetEnd().
Referenced by KIGFX::PCB_PAINTER::draw(), RECTANGLE_POINT_EDIT_BEHAVIOR::MakePoints(), and RECTANGLE_POINT_EDIT_BEHAVIOR::UpdatePoints().
|
protectedinherited |
Definition at line 1624 of file eda_shape.cpp.
References ARC, SHAPE_ELLIPSE::BBox(), BEZIER, buildShapeEllipse(), CIRCLE, computeArcBBox(), ELLIPSE, ELLIPSE_ARC, GetEnd(), GetPolyShape(), GetRadius(), GetRectCorners(), GetStart(), GetWidth(), BOX2< Vec >::Inflate(), m_bezierPoints, m_shape, BOX2< Vec >::Merge(), BOX2< Vec >::Normalize(), POLY, RECTANGLE, SEGMENT, BOX2< Vec >::SetEnd(), BOX2< Vec >::SetOrigin(), SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by PCB_SHAPE::GetBoundingBox(), SCH_SHAPE::GetBoundingBox(), getCenter(), GetCornersInSequence(), hitTest(), and TransformShapeToPolygon().
|
inherited |
Definition at line 1290 of file eda_shape.cpp.
References ARC, BEZIER, BOX2< Vec >::Centre(), CIRCLE, ELLIPSE, ELLIPSE_ARC, getBoundingBox(), m_arcCenter, m_ellipse, m_end, m_shape, m_start, POLY, RECTANGLE, SEGMENT, SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by CREEPAGE_GRAPH::Addshape(), BOOST_AUTO_TEST_CASE(), CalcArcAngles(), PCB_SHAPE::GetCenter(), SCH_SHAPE::GetCenter(), GetEndingTangents(), getPosition(), hitTest(), hitTest(), makeEffectiveShapes(), SCH_SHAPE::Plot(), tangentAtEndpoint(), PLOTTER::ThickArc(), TransformShapeToPolygon(), and UpdateHatching().
|
inherited |
Definition at line 605 of file eda_shape.cpp.
References m_cornerRadius.
Referenced by BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), CONVERT_TOOL::CreateLines(), KIGFX::PCB_PAINTER::draw(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), FabMaskShape(), PCB_IO_KICAD_SEXPR::format(), PCB_WRITER_V10::format(), formatRect(), formatRect(), isRoundedRect(), isRoundedRect(), RECTANGLE_POINT_EDIT_BEHAVIOR::MakePoints(), RECTANGLE_POINT_EDIT_BEHAVIOR::MakePoints(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), processClosedShape(), OUTSET_ROUTINE::ProcessItem(), roundedRectToPolygon(), roundedRectToPolygon(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), SegmentIntersectsBoard(), Serialize(), PCB_IO_IPC2581::shapeHash(), PCB_SHAPE::syncLibCoords(), CREEPAGE_GRAPH::TransformEdgeToCreepShapes(), TransformShapeToPolygon(), UpdateHatching(), RECTANGLE_POINT_EDIT_BEHAVIOR::UpdatePoints(), and RECTANGLE_POINT_EDIT_BEHAVIOR::UpdatePoints().
Reimplemented in PCB_TEXTBOX.
Definition at line 2133 of file eda_shape.cpp.
References ANGLE_0, ANGLE_180, ANGLE_270, ANGLE_90, center, BOX2< Vec >::GetBottom(), getBoundingBox(), BOX2< Vec >::GetCenter(), BOX2< Vec >::GetLeft(), GetPolyShape(), BOX2< Vec >::GetRight(), BOX2< Vec >::GetTop(), EDA_ANGLE::IsCardinal(), m_shape, BOX2< Vec >::Normalize(), EDA_ANGLE::Normalize(), SHAPE_POLY_SET::OutlineCount(), RECTANGLE, RotatePoint(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by SCH_TABLE::DrawBorders(), and PCB_TEXTBOX::GetCornersInSequence().
|
inlineprotectedvirtualinherited |
|
inlinevirtualinherited |
Reimplemented in SCH_SHAPE.
Definition at line 166 of file eda_shape.h.
References GetWidth().
Referenced by PCB_SHAPE::GetBoundingBox(), PCB_SHAPE::GetEffectiveShape(), GetHatchLineWidth(), hitTest(), hitTest(), hitTest(), makeEffectiveShapes(), MakeEffectiveShapesForStroking(), makeShortenedBodyShapes(), PNS_KICAD_IFACE_BASE::syncGraphicalItem(), TransformWithLineEndingsToPolygon(), and unsafeLineEndings().
|
inlineinherited |
Direct read-only access to the underlying ellipse payload.
Useful for copying into a SHAPE_ELLIPSE when building effective collision shapes.
Definition at line 435 of file eda_shape.h.
|
inlineinherited |
Definition at line 385 of file eda_shape.h.
References m_ellipse.
Referenced by PCB_GRID_HELPER::AddConstructionItems(), FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), GRAPHICS_CLEANER::areEquivalent(), BoardItemIntersectable(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), CONVERT_TOOL::CreateLines(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KI_TEST::ellipseEquationAt(), ellipseToPolygon(), ellipseToPolygon(), evalEllipsePoint(), formatEllipse(), formatEllipseArc(), PCB_SHAPE::GetConnectionPoints(), hash_fp_item(), hashShape(), FOOTPRINT::cmp_drawings::operator()(), BRDITEMS_PLOTTER::PlotShape(), processClosedShape(), processShapeSegment(), CONSTRAINT_OVERLAY::render(), Serialize(), shapeNeedsUpdate(), PCB_SHAPE::syncLibCoords(), ELLIPSE_ARC_GEOM_SYNCER::updateAll(), and ELLIPSE_GEOM_SYNCER::updateAll().
|
inlineinherited |
Definition at line 431 of file eda_shape.h.
References m_ellipse.
Referenced by FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), GRAPHICS_CLEANER::areEquivalent(), BoardItemIntersectable(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), CheckLibSymbolGraphics(), CONVERT_TOOL::CreateLines(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), ellipseToPolygon(), formatEllipseArc(), PCB_SHAPE::GetConnectionPoints(), hash_fp_item(), hashShape(), FOOTPRINT::cmp_drawings::operator()(), BRDITEMS_PLOTTER::PlotShape(), processShapeSegment(), CONSTRAINT_OVERLAY::render(), Serialize(), ShapeGetMsgPanelInfo(), shapeNeedsUpdate(), PCB_SHAPE::syncLibCoords(), and ELLIPSE_ARC_GEOM_SYNCER::updateAll().
|
inlineinherited |
Definition at line 394 of file eda_shape.h.
References m_ellipse.
Referenced by FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), GRAPHICS_CLEANER::areEquivalent(), BoardItemIntersectable(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), CheckLibSymbolGraphics(), CONVERT_TOOL::CreateLines(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), KI_TEST::ellipseEquationAt(), ellipseToPolygon(), ellipseToPolygon(), evalEllipsePoint(), formatEllipse(), formatEllipseArc(), PCB_SHAPE::GetConnectionPoints(), SCH_SHAPE::GetItemDescription(), hash_fp_item(), hashShape(), GRAPHICS_CLEANER::isNullShape(), FOOTPRINT::cmp_drawings::operator()(), BRDITEMS_PLOTTER::PlotShape(), processClosedShape(), processShapeSegment(), CONSTRAINT_OVERLAY::render(), Serialize(), ShapeGetMsgPanelInfo(), shapeNeedsUpdate(), PCB_SHAPE::syncLibCoords(), ELLIPSE_ARC_GEOM_SYNCER::updateAll(), and ELLIPSE_GEOM_SYNCER::updateAll().
|
inlineinherited |
Definition at line 403 of file eda_shape.h.
References m_ellipse.
Referenced by FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), GRAPHICS_CLEANER::areEquivalent(), BoardItemIntersectable(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), CheckLibSymbolGraphics(), CONVERT_TOOL::CreateLines(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), KI_TEST::ellipseEquationAt(), ellipseToPolygon(), ellipseToPolygon(), evalEllipsePoint(), formatEllipse(), formatEllipseArc(), PCB_SHAPE::GetConnectionPoints(), SCH_SHAPE::GetItemDescription(), hash_fp_item(), hashShape(), GRAPHICS_CLEANER::isNullShape(), FOOTPRINT::cmp_drawings::operator()(), BRDITEMS_PLOTTER::PlotShape(), processClosedShape(), processShapeSegment(), CONSTRAINT_OVERLAY::render(), Serialize(), ShapeGetMsgPanelInfo(), shapeNeedsUpdate(), PCB_SHAPE::syncLibCoords(), ELLIPSE_ARC_GEOM_SYNCER::updateAll(), and ELLIPSE_GEOM_SYNCER::updateAll().
|
inlineinherited |
Definition at line 412 of file eda_shape.h.
References m_ellipse.
Referenced by FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), GRAPHICS_CLEANER::areEquivalent(), BoardItemIntersectable(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), CONVERT_TOOL::CreateLines(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), KI_TEST::ellipseEquationAt(), ellipseToPolygon(), ellipseToPolygon(), evalEllipsePoint(), formatEllipse(), formatEllipseArc(), PCB_SHAPE::GetConnectionPoints(), hash_fp_item(), hashShape(), FOOTPRINT::cmp_drawings::operator()(), BRDITEMS_PLOTTER::PlotShape(), processClosedShape(), processShapeSegment(), CONSTRAINT_OVERLAY::render(), Serialize(), ShapeGetMsgPanelInfo(), shapeNeedsUpdate(), PCB_SHAPE::syncLibCoords(), ELLIPSE_ARC_GEOM_SYNCER::updateAll(), and ELLIPSE_GEOM_SYNCER::updateAll().
|
inlineinherited |
Definition at line 422 of file eda_shape.h.
References m_ellipse.
Referenced by FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), GRAPHICS_CLEANER::areEquivalent(), BoardItemIntersectable(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), CheckLibSymbolGraphics(), CONVERT_TOOL::CreateLines(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), ellipseToPolygon(), formatEllipseArc(), PCB_SHAPE::GetConnectionPoints(), hash_fp_item(), hashShape(), FOOTPRINT::cmp_drawings::operator()(), BRDITEMS_PLOTTER::PlotShape(), processShapeSegment(), CONSTRAINT_OVERLAY::render(), Serialize(), ShapeGetMsgPanelInfo(), shapeNeedsUpdate(), PCB_SHAPE::syncLibCoords(), and ELLIPSE_ARC_GEOM_SYNCER::updateAll().
|
inlineinherited |
Return the ending point of the graphic.
Definition at line 333 of file eda_shape.h.
References m_end.
Referenced by EE_GRID_HELPER::AddConstructionItems(), PCB_GRID_HELPER::AddConstructionItems(), PCB_POINT_EDITOR::addCorner(), PAD::AddPrimitive(), FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), BOARD_CONSTRAINT_ADAPTER::ApplyReferenceValues(), ArcTangentSeedAt(), ArcTangentSeedNear(), GRAPHICS_CLEANER::areEquivalent(), AssertOutlineValid(), PCB_IO_KICAD_SEXPR_PARSER::bakeTextBoxLib(), BoardItemIntersectable(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), buildCarrier(), buildChainedClosedContour(), BuildConstraintFromItems(), CalcArcAngles(), calcEdit(), KI_TEST::CheckFpShape(), CheckLibSymbolGraphics(), checkNormalizeIsStable(), ConnectBoardShapes(), constraintMemberForEditPoint(), ConstraintShapeAnchors(), PCB_EDIT_TABLE_TOOL::copyCell(), SCH_EDIT_TABLE_TOOL::copyCell(), CONVERT_TOOL::CreateLines(), doConvertOutlineToPolygon(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), DRAWING_TOOL::DrawLine(), KI_ARC_EDIT::EditArcEndpointKeepCenter(), editArcEndpointKeepTangent(), extensionRay(), GENCAD_EXPORTER::footprintWriteShape(), PCB_IO_KICAD_SEXPR::format(), PCB_WRITER_V10::format(), PCB_WRITER_V10::format(), PCB_WRITER_V9::format(), PCB_WRITER_V9::format(), formatArc(), formatArc(), formatArc(), formatBezier(), formatBezier(), formatBezier(), formatRect(), formatRect(), formatRect(), free_end(), GetBotRight(), PCB_TEXTBOX::GetBotRight(), getBoundingBox(), PCB_SHAPE::GetConnectionPoints(), GetEndingTangents(), GetLength(), GetLineEndingEndpoints(), PCB_TABLECELL::GetMsgPanelInfo(), PCB_TEXTBOX::GetMsgPanelInfo(), SCH_TABLECELL::GetMsgPanelInfo(), SCH_TEXTBOX::GetMsgPanelInfo(), GetRectCorners(), CADSTAR_SCH_ARCHIVE_LOADER::getScaledLibPart(), GetSegmentAngle(), GRAPH_CONNECTION::GetShapes(), SCH_TABLECELL::GetShownText(), SCH_TEXTBOX::GetShownText(), CONVERT_TOOL::getStartEndPoints(), PCB_TEXTBOX::GetTopLeft(), GraphicEditArc(), hash_fp_item(), hashShape(), hitTest(), hitTest(), idf_append_shape(), SCH_SHAPE::IsEndPoint(), GRAPHICS_CLEANER::isNullShape(), libSaveTextBox(), libSaveTextBox(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadArc(), SCH_IO_EAGLE::loadSymbolRectangle(), makeEffectiveShapes(), DSN::SPECCTRA_DB::makeIMAGE(), RECTANGLE_POINT_EDIT_BEHAVIOR::MakePoints(), CONVERT_TOOL::makePolysFromChainedSegs(), makeShortenedBodyShapes(), SCH_SCREEN::MarkConnections(), GRAPHICS_CLEANER::mergeRects(), EDIT_TOOL::ModifyLines(), MoveOpenCourtyardItems(), PCB_SHAPE::Normalize(), PCB_TABLE::Normalize(), SCH_SHAPE::Normalize(), SCH_TABLE::Normalize(), PCB_SHAPE::NormalizeForCompare(), ALLEGRO::BOARD_BUILDER::GRAPHIC_KEY_HASH::operator()(), SCH_CONNECTIVITY::LIBRARY_SHAPE_FACT::operator==(), KICAD_FORMAT::LEGACY::orderFpShapes(), outlineProximity(), SCH_EDITOR_CONTROL::Paste(), BRDITEMS_PLOTTER::PlotShape(), OUTSET_ROUTINE::ProcessItem(), DOGBONE_CORNER_ROUTINE::ProcessLinePair(), LINE_CHAMFER_ROUTINE::ProcessLinePair(), LINE_EXTENSION_ROUTINE::ProcessLinePair(), LINE_FILLET_ROUTINE::ProcessLinePair(), processShapeSegment(), CONSTRAINT_OVERLAY::render(), PCB_GRID_HELPER::ResolveSnap(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveArc(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveBezier(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveRectangle(), SCH_IO_KICAD_SEXPR::saveTextBox(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveTextBox(), SCH_WRITER_V10::saveTextBox(), SCH_WRITER_V9::saveTextBox(), SegmentIntersectsBoard(), PCB_SELECTION_TOOL::selectAllConnectedShapes(), Serialize(), PCB_TEXTBOX::Serialize(), SCH_TEXTBOX::Serialize(), GRAPHICS_IMPORTER::setupSplineOrLine(), ShapeGetMsgPanelInfo(), PCB_SHAPE::syncLibCoords(), tangentAtEndpoint(), PLOTTER::ThickArc(), AR_MATRIX::TracePcbShape(), DIALOG_TEXT_PROPERTIES::TransferDataFromWindow(), CREEPAGE_GRAPH::TransformEdgeToCreepShapes(), TransformShapeToPolygon(), TransformWithLineEndingsToPolygon(), CREEPAGE_OVERLAY::Update(), BEZIER_GEOM_SYNCER::updateBezier(), CIRCLE_GEOM_SYNCER::updateCenterPoint(), RECTANGLE_GEOM_SYNCER::updateCorners(), ARC_GEOM_SYNCER::updateCRAA(), LINE_GEOM_SYNCER::updateEnds(), PCB_POINT_EDITOR::updateItem(), RECTANGLE_POINT_EDIT_BEHAVIOR::UpdatePoints(), LINE_GEOM_SYNCER::updatePolar(), and ARC_GEOM_SYNCER::updateSME().
|
inlineinherited |
Definition at line 185 of file eda_shape.h.
References IsClosed(), m_blankEnding, and m_endEnding.
Referenced by BOARD_ADAPTER::addShape(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), EXPORTER_STEP::buildGraphic3DShape(), canLowerLineEndings(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), PCB_IO_KICAD_SEXPR::format(), formatArc(), formatBezier(), formatPoly(), SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), ShortenedBezierCurve(), and unsafeLineEndings().
|
inlineinherited |
Definition at line 202 of file eda_shape.h.
References m_endEnding.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 209 of file eda_shape.h.
References m_endEnding.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 194 of file eda_shape.h.
References m_endEnding.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), and hasLineEndings().
|
inlineinherited |
Definition at line 204 of file eda_shape.h.
References m_endEnding.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inherited |
Compute outward-facing tangent angles at the start and end of the shape.
When aLineWidth > 0, the tangent accounts for line shortening so that end shapes align with the visible stroke on tight curves.
Definition at line 4057 of file eda_shape.cpp.
References ANGLE_0, ANGLE_180, ANGLE_90, ARC, ARROW_OPEN, BEZIER, bezierLength(), SHAPE_LINE_CHAIN::CPoint(), delta, ELLIPSE_ARC, VECTOR2< T >::EuclideanNorm(), findBezierTAtLength(), GetBezierC1(), GetBezierC2(), GetBezierPoints(), getCenter(), LINE_ENDING::GetCurveOrientationDepth(), GetEnd(), GetPolyShape(), GetStart(), LINE_ENDING::GetStyle(), m_bezierC1, m_bezierC2, m_ellipse, m_end, m_endEnding, m_shape, m_start, m_startEnding, SHAPE_POLY_SET::Outline(), SHAPE_POLY_SET::OutlineCount(), SHAPE_LINE_CHAIN::PointCount(), POLY, SEGMENT, and ShortenedBezierCurve().
Referenced by BOARD_ADAPTER::addShape(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), EXPORTER_STEP::buildGraphic3DShape(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), GetLineEndingsBoundingBox(), MakeLineEndingEffectiveShapes(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), and TransformLineEndingsToPolygon().
|
inlineinherited |
Definition at line 335 of file eda_shape.h.
References m_end.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC(), PCB_TEXTBOX::GetBotRight(), GetRectangleWidth(), PCB_TEXTBOX::GetTopLeft(), and DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run().
|
inlineinherited |
Definition at line 334 of file eda_shape.h.
References m_end.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC(), PCB_TEXTBOX::GetBotRight(), GetRectangleHeight(), PCB_TEXTBOX::GetTopLeft(), and DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run().
|
inlineinherited |
Definition at line 161 of file eda_shape.h.
References m_fillColor.
Referenced by EE_GRAPHIC_TOOL::DrawShape(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), KIGFX::SCH_PAINTER::getRenderColor(), libSaveSymbolDrawItem(), libSaveSymbolDrawItem(), libSaveTextBox(), libSaveTextBox(), SCH_IO_ALTIUM::ParsePolygon(), SCH_RULE_AREA::Plot(), SCH_SHAPE::Plot(), SCH_IO_KICAD_SEXPR::saveShape(), SCH_WRITER_V10::saveShape(), SCH_WRITER_V9::saveShape(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveSymbolDrawItem(), SCH_IO_KICAD_SEXPR::saveTextBox(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveTextBox(), SCH_WRITER_V10::saveTextBox(), SCH_WRITER_V9::saveTextBox(), SCH_TABLECELL_DESC::SCH_TABLECELL_DESC(), SCH_TEXTBOX::Serialize(), and DIALOG_TEXT_PROPERTIES::TransferDataToWindow().
|
inlineinherited |
Definition at line 150 of file eda_shape.h.
References m_fill.
Referenced by PCB_IO_IPC2581::addShape(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), canLowerLineEndings(), KI_TEST::CheckFpShape(), DIPTRACE_SCH_IMPORT_FIXTURE::CountFilledPolysForRefdes(), DIPTRACE_SCH_IMPORT_FIXTURE::CountOpenPolysWithPointCountForRefdes(), KIGFX::SCH_PAINTER::draw(), EE_GRAPHIC_TOOL::DrawShape(), LIB_SYMBOL::FixupDrawItems(), fixupSchFillMode(), PCB_IO_KICAD_SEXPR::format(), PCB_WRITER_V10::format(), KIGFX::SCH_PAINTER::getRenderColor(), hash_fp_item(), IsAnyFill(), IsHatchedFill(), IsSolidFill(), libSaveSymbolDrawItem(), libSaveSymbolDrawItem(), libSaveTextBox(), libSaveTextBox(), CONVERT_TOOL::makePolysFromClosedGraphics(), SCH_IO_ALTIUM::ParsePolygon(), POLYGON_BOOLEAN_ROUTINE::ProcessShape(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveArc(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveBezier(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveCircle(), SCH_IO_KICAD_LEGACY_LIB_CACHE::savePolyLine(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveRectangle(), SCH_IO_KICAD_SEXPR::saveShape(), SCH_WRITER_V10::saveShape(), SCH_WRITER_V9::saveShape(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveSymbolDrawItem(), SCH_IO_KICAD_SEXPR::saveTextBox(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveTextBox(), SCH_WRITER_V10::saveTextBox(), SCH_WRITER_V9::saveTextBox(), SCH_SHAPE_DESC::SCH_SHAPE_DESC(), Serialize(), SCH_TEXTBOX::Serialize(), shapeNeedsUpdate(), and UpdateHatching().
|
inherited |
Definition at line 728 of file eda_shape.cpp.
References CROSS_HATCH, HATCH, m_fill, NO_FILL, NONE, REVERSE_HATCH, and SOLID.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
protectedinherited |
Definition at line 1514 of file eda_shape.cpp.
References _, ARC, BEZIER, CIRCLE, ELLIPSE, ELLIPSE_ARC, FRAME_SCH_SYMBOL_EDITOR, IsProxyItem(), m_shape, POLY, RECTANGLE, and SEGMENT.
Referenced by PCB_SHAPE::GetFriendlyName(), and ShapeGetMsgPanelInfo().
|
inherited |
Definition at line 741 of file eda_shape.cpp.
References m_hatchingCache, and UpdateHatching().
Referenced by FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), EXPORTER_STEP::buildGraphic3DShape(), hitTest(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), and TransformShapeToPolygon().
|
inlineprotectedvirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 678 of file eda_shape.h.
Referenced by UpdateHatching().
|
inherited |
Definition at line 752 of file eda_shape.cpp.
References m_hatchingCache, and UpdateHatching().
Referenced by BOOST_AUTO_TEST_CASE(), KIGFX::PCB_PAINTER::draw(), and KIGFX::SCH_PAINTER::draw().
|
inlinevirtualinherited |
Reimplemented in SCH_SHAPE.
Definition at line 168 of file eda_shape.h.
References GetHatchLineWidth().
Referenced by PCB_SHAPE::getHatchingKnockouts(), and UpdateHatching().
|
inlinevirtualinherited |
Reimplemented in SCH_SHAPE.
Definition at line 167 of file eda_shape.h.
References GetEffectiveWidth().
Referenced by KIGFX::PCB_PAINTER::draw(), GetHatchLineSpacing(), and UpdateHatching().
|
inherited |
Definition at line 542 of file eda_shape.cpp.
References ARC, EDA_ANGLE::AsRadians(), BEZIER, buildShapeEllipse(), SHAPE_POLY_SET::COutline(), SHAPE_LINE_CHAIN::CSegment(), VECTOR2< T >::Distance(), ELLIPSE, ELLIPSE_ARC, GetArcAngle(), GetEnd(), SHAPE_ELLIPSE::GetLength(), GetPolyShape(), GetRadius(), GetStart(), SEG::Length(), m_bezierPoints, m_shape, POLY, SEGMENT, SHAPE_LINE_CHAIN::SegmentCount(), SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), DRAWING_TOOL::drawShape(), SCH_SHAPE::GetItemDescription(), DOGBONE_CORNER_ROUTINE::ProcessLinePair(), LINE_CHAMFER_ROUTINE::ProcessLinePair(), LINE_EXTENSION_ROUTINE::ProcessLinePair(), LINE_FILLET_ROUTINE::ProcessLinePair(), ShapeGetMsgPanelInfo(), and PCB_CONTROL::UpdateMessagePanel().
|
inlineinherited |
Definition at line 174 of file eda_shape.h.
References m_stroke.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inherited |
Return the source endpoints used to place line endings.
Definition at line 4224 of file eda_shape.cpp.
References ARC, BEZIER, SHAPE_POLY_SET::COutline(), SHAPE_LINE_CHAIN::CPoint(), ELLIPSE_ARC, GetBezierPoints(), GetEnd(), GetPolyShape(), GetStart(), m_shape, SHAPE_POLY_SET::OutlineCount(), SHAPE_LINE_CHAIN::PointCount(), POLY, and SEGMENT.
Referenced by BOARD_ADAPTER::addShape(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), EXPORTER_STEP::buildGraphic3DShape(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), GetLineEndingsBoundingBox(), lowerLineEndingShape(), MakeLineEndingEffectiveShapes(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), TransformLineEndingsToPolygon(), and unsafeLineEndings().
|
inherited |
Definition at line 2984 of file eda_shape.cpp.
References ARROW_OPEN, GetEndingTangents(), GetLineEndingEndpoints(), LINE_ENDING::GetShapes(), LINE_ENDING::GetStrokeWidth(), LINE_ENDING::GetStyle(), hasLineEnding(), BOX2< Vec >::Inflate(), m_endEnding, m_startEnding, BOX2< Vec >::Merge(), NONE, and BOX2< Vec >::Normalize().
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), PCB_SHAPE::GetBoundingBox(), and SCH_LINE::GetBoundingBox().
|
inherited |
Definition at line 3850 of file eda_shape.cpp.
References DEFAULT, m_stroke, and SOLID.
Referenced by BOOST_AUTO_TEST_CASE(), EXPORTER_STEP::buildGraphic3DShape(), canLowerLineEndings(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), hash_fp_item(), PCB_TEXTBOX_DESC::PCB_TEXTBOX_DESC(), SCH_TEXTBOX::Serialize(), and unsafeLineEndings().
|
inlineprotectedvirtualinherited |
Reimplemented in PCB_SHAPE, and SCH_SHAPE.
Definition at line 744 of file eda_shape.h.
Referenced by beginEdit(), calcEdit(), Deserialize(), flip(), hitTest(), hitTest(), makeEffectiveShapes(), MakeEffectiveShapesForStroking(), makeShortenedBodyShapes(), RebuildBezierToSegmentsPointsList(), rotate(), scale(), ShortenedBezierPolyline(), TransformWithLineEndingsToPolygon(), and UpdateHatching().
|
inherited |
Definition at line 3093 of file eda_shape.cpp.
References GetPolyShape(), SHAPE_POLY_SET::OutlineCount(), and SHAPE_POLY_SET::VertexCount().
Referenced by calcEdit(), SCH_SHAPE::GetItemDescription(), GRAPHICS_CLEANER::isNullShape(), and SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic().
|
inherited |
Duplicate the polygon outlines into a flat list of VECTOR2I points.
Outlines (and holes) are appended in order; primarily intended for legacy callers that expect explicit point buffers rather than SHAPE objects.
Definition at line 3048 of file eda_shape.cpp.
References SHAPE_POLY_SET::COutline(), SHAPE_LINE_CHAIN::CPoints(), GetPolyShape(), SHAPE_POLY_SET::OutlineCount(), and SHAPE_LINE_CHAIN::PointCount().
Referenced by AssertOutlineValid(), BOOST_AUTO_TEST_CASE(), SCH_SHAPE::IsEndPoint(), SCH_SCREEN::MarkConnections(), SegmentIntersectsBoard(), and CREEPAGE_GRAPH::TransformEdgeToCreepShapes().
|
inherited |
Definition at line 3069 of file eda_shape.cpp.
References m_poly.
Referenced by PCB_POINT_EDITOR::addCorner(), SCH_POINT_EDITOR::addCorner(), SCH_SHAPE::AddPoint(), PAD::AddPrimitive(), FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), ArcTangentSeedAt(), PCB_IO_KICAD_SEXPR_PARSER::bakeTextBoxLib(), beginEdit(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), calcEdit(), PCB_POINT_EDITOR::chamferCorner(), KI_TEST::CheckFpShape(), Compare(), ConstraintPolygonIsModelable(), ConstraintShapeAnchors(), continueEdit(), DIPTRACE_SCH_IMPORT_FIXTURE::CountOpenPolysWithPointCountForRefdes(), DIPTRACE_SCH_IMPORT_FIXTURE::CountSheetGraphicLines(), CONVERT_TOOL::CreateLines(), endEdit(), FabMaskShape(), CADSTAR_SCH_ARCHIVE_LOADER::fixUpLibraryPins(), flip(), PCB_IO_KICAD_SEXPR::format(), PCB_IO_KICAD_SEXPR::format(), PCB_WRITER_V10::format(), PCB_WRITER_V10::format(), PCB_WRITER_V9::format(), PCB_WRITER_V9::format(), formatPoly(), formatPoly(), formatPoly(), getBoundingBox(), PCB_SHAPE::GetConnectionPoints(), PCB_SHAPE::GetCorners(), GetCornersInSequence(), GetEndingTangents(), PCB_SHAPE::GetFocusPosition(), SCH_SHAPE::GetItemDescription(), GetLength(), PCB_SHAPE::GetLibraryPolyShape(), GetLineEndingEndpoints(), SCH_RULE_AREA::GetMsgPanelInfo(), GetPointCount(), GetPolyPoints(), getPosition(), CADSTAR_SCH_ARCHIVE_LOADER::getScaledLibPart(), hash_fp_item(), hashShape(), hitTest(), hitTest(), idf_append_shape(), IsClosed(), IsPolyShapeValid(), SCH_IO_EAGLE::loadSymbolPolyLine(), SCH_RULE_AREA::MakeEffectiveShapes(), makeEffectiveShapes(), makeShortenedBodyShapes(), EDIT_TOOL::ModifyLines(), move(), PCB_SHAPE::Normalize(), operator==(), KICAD_FORMAT::LEGACY::orderFpShapes(), PCB_IO_EAGLE::packagePolygon(), SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic(), PCB_IO_KICAD_SEXPR_PARSER::parseTextBoxContent(), SCH_EDITOR_CONTROL::Paste(), ORCAD_CONVERTER::placeInstance(), SCH_RULE_AREA::Plot(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), processClosedShape(), POLYGON_BOOLEAN_ROUTINE::ProcessShape(), PCB_SHAPE::rebakeFromTransform(), SCHEMATIC::RecalculateConnections(), SCH_RULE_AREA::RefreshContainedItemsAndDirectives(), PCB_POINT_EDITOR::removeCorner(), SCH_POINT_EDITOR::removeCorner(), SCH_POINT_EDITOR::removeCornerCondition(), rotate(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), SCH_IO_KICAD_LEGACY_LIB_CACHE::savePolyLine(), scale(), Serialize(), SetPolyPoints(), SetPolyShape(), ShapeGetMsgPanelInfo(), Similarity(), PCB_SHAPE::syncLibCoords(), TransformShapeToPolygon(), PCB_TEXTBOX::TransformShapeToPolygon(), TransformWithLineEndingsToPolygon(), and UpdateHatching().
|
inherited |
Definition at line 3077 of file eda_shape.cpp.
References m_poly.
|
protectedinherited |
Definition at line 531 of file eda_shape.cpp.
References ARC, SHAPE_POLY_SET::CVertex(), ELLIPSE, ELLIPSE_ARC, getCenter(), GetPolyShape(), m_shape, m_start, and POLY.
Referenced by PCB_SHAPE::GetPosition(), SCH_SHAPE::GetPosition(), setPosition(), and UpdateHatching().
|
inherited |
Definition at line 1380 of file eda_shape.cpp.
References ARC, CIRCLE, KiROUND(), m_arcCenter, m_end, m_shape, m_start, radius, SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by EE_GRID_HELPER::AddConstructionItems(), PCB_GRID_HELPER::AddConstructionItems(), FEATURES_MANAGER::AddShape(), CREEPAGE_GRAPH::Addshape(), BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), BOARD_CONSTRAINT_ADAPTER::ApplyReferenceValues(), BoardItemIntersectable(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), buildCarrier(), calcEdit(), CheckLibSymbolGraphics(), computeArcBBox(), KIGFX::PCB_PAINTER::draw(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), editArcEndpointKeepCenterAndRadius(), FabMaskShape(), formatCircle(), formatCircle(), formatCircle(), getBoundingBox(), PCB_SHAPE::GetConnectionPoints(), PCB_SHAPE::GetFocusPosition(), SCH_SHAPE::GetItemDescription(), GetLength(), hash_fp_item(), hashShape(), hitTest(), hitTest(), idf_append_shape(), GRAPHICS_CLEANER::isNullShape(), makeEffectiveShapes(), DSN::SPECCTRA_DB::makeIMAGE(), CONVERT_TOOL::makePolysFromClosedGraphics(), makeShortenedBodyShapes(), outlineProximity(), ALTIUM_PCB::Parse(), ORCAD_CONVERTER::placeInstance(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), processClosedShape(), OUTSET_ROUTINE::ProcessItem(), POLYGON_BOOLEAN_ROUTINE::ProcessShape(), CONSTRAINT_OVERLAY::render(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveArc(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveCircle(), SegmentIntersectsBoard(), SetLibShapeFillAndColor(), SetSchShapeFillAndColor(), ShapeGetMsgPanelInfo(), CREEPAGE_GRAPH::TransformEdgeToCreepShapes(), TransformShapeToPolygon(), TransformWithLineEndingsToPolygon(), CREEPAGE_OVERLAY::Update(), ARC_GEOM_SYNCER::updateCRAA(), and UpdateHatching().
|
inherited |
Definition at line 577 of file eda_shape.cpp.
References GetEndY(), GetStartY(), m_shape, RECTANGLE, SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by PCB_IO_IPC2581::addLocationNode(), FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), KIGFX::PCB_PAINTER::draw(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), FabMaskShape(), ODB::GetShapePosition(), hitTest(), hitTest(), makeEffectiveShapes(), processClosedShape(), OUTSET_ROUTINE::ProcessItem(), rotate(), SetCornerRadius(), TransformShapeToPolygon(), and UpdateHatching().
|
inherited |
Definition at line 591 of file eda_shape.cpp.
References GetEndX(), GetStartX(), m_shape, RECTANGLE, SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by PCB_IO_IPC2581::addLocationNode(), FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), KIGFX::PCB_PAINTER::draw(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), FabMaskShape(), ODB::GetShapePosition(), hitTest(), hitTest(), makeEffectiveShapes(), processClosedShape(), OUTSET_ROUTINE::ProcessItem(), rotate(), SetCornerRadius(), TransformShapeToPolygon(), and UpdateHatching().
|
inherited |
Definition at line 2118 of file eda_shape.cpp.
References GetEnd(), GetStart(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), buildCarrier(), KIGFX::PCB_PAINTER::draw(), getBoundingBox(), PCB_SHAPE::GetConnectionPoints(), PCB_SHAPE::GetCorners(), hitTest(), hitTest(), SCH_SHAPE::IsEndPoint(), makeEffectiveShapes(), SCH_SCREEN::MarkConnections(), outlineProximity(), SCH_EDITOR_CONTROL::Paste(), BRDITEMS_PLOTTER::PlotShape(), processClosedShape(), POLYGON_BOOLEAN_ROUTINE::ProcessShape(), roundedRectToPolygon(), roundedRectToPolygon(), TransformShapeToPolygon(), and PCB_TEXTBOX::TransformShapeToPolygon().
|
inherited |
Definition at line 1462 of file eda_shape.cpp.
References GetEnd(), GetStart(), and RADIANS_T.
|
inlineinherited |
Definition at line 177 of file eda_shape.h.
References m_shape.
Referenced by EE_GRID_HELPER::AddConstructionItems(), PCB_GRID_HELPER::AddConstructionItems(), PCB_POINT_EDITOR::addCorner(), SCH_POINT_EDITOR::addCornerCondition(), PCB_IO_IPC2581::addLocationNode(), PCB_IO_IPC2581::addPackage(), SCH_SHAPE::AddPoint(), PAD::AddPrimitive(), FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), applyGeometry(), ArcTangentSeedAt(), GRAPHICS_CLEANER::areEquivalent(), AssertOutlineValid(), PCB_IO_KICAD_SEXPR_PARSER::bakeTextBoxLib(), beginEdit(), BoardItemIntersectable(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), buildCarrier(), BuildCreepageBoardEdges(), buildFilledPolygonFromShapes(), calcEdit(), PCB_POINT_EDITOR::CanAddCorner(), PCB_POINT_EDITOR::CanChamferCorner(), PCB_POINT_EDITOR::chamferCorner(), CHECK_SHAPE_LIBPOS_MIRROR(), KI_TEST::CheckFpShape(), CheckLibSymbolGraphics(), ConnectBoardShapes(), constraintMemberForEditPoint(), ConstraintMemberLabel(), ConstraintPolygonIsModelable(), ConstraintShapeAnchors(), ConstraintShapeVertex(), continueEdit(), DIPTRACE_SCH_IMPORT_FIXTURE::CountFilledPolysForRefdes(), DIPTRACE_SCH_IMPORT_FIXTURE::CountOpenPolysWithPointCountForRefdes(), DIPTRACE_SCH_IMPORT_FIXTURE::CountSheetGraphicLines(), DIPTRACE_SCH_IMPORT_FIXTURE::CountSymbolShapes(), CONVERT_TOOL::CreateLines(), PCB_SHAPE::Deserialize(), SCH_RULE_AREA::Deserialize(), doConvertOutlineToPolygon(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), EDA_BEZIER_POINT_EDIT_BEHAVIOR::EDA_BEZIER_POINT_EDIT_BEHAVIOR(), EDA_CIRCLE_POINT_EDIT_BEHAVIOR::EDA_CIRCLE_POINT_EDIT_BEHAVIOR(), EDA_ELLIPSE_POINT_EDIT_BEHAVIOR::EDA_ELLIPSE_POINT_EDIT_BEHAVIOR(), EDA_POLYGON_POINT_EDIT_BEHAVIOR::EDA_POLYGON_POINT_EDIT_BEHAVIOR(), EDA_SEGMENT_POINT_EDIT_BEHAVIOR::EDA_SEGMENT_POINT_EDIT_BEHAVIOR(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), EDA_TABLECELL_POINT_EDIT_BEHAVIOR::EDA_TABLECELL_POINT_EDIT_BEHAVIOR(), ellipseToPolygon(), ellipseToPolygon(), endEdit(), PAD_TOOL::explodePad(), FabMaskShape(), CADSTAR_SCH_ARCHIVE_LOADER::fixUpLibraryPins(), EDIT_TOOL::Flip(), GENCAD_EXPORTER::footprintWriteShape(), PCB_IO_KICAD_SEXPR::format(), PCB_WRITER_V10::format(), PCB_WRITER_V10::format(), PCB_WRITER_V9::format(), PCB_WRITER_V9::format(), GetBoardItemWidth(), PCB_SHAPE::GetCorners(), PCB_SHAPE::GetCoverageArea(), SCH_SHAPE::GetItemDescription(), SCH_SHAPE::GetMenuImage(), CADSTAR_SCH_ARCHIVE_LOADER::getScaledLibPart(), ODB::GetShapePosition(), CONVERT_TOOL::getStartEndPoints(), GraphicEditShape(), SCH_SELECTION_TOOL::GuessSelectionCandidates(), hash_fp_item(), hashShape(), idf_append_shape(), SCH_SHAPE::IsEndPoint(), PCB_SELECTION_TOOL::isExpandableGraphicShape(), IsGraphicExtendSource(), GRAPHICS_CLEANER::isNullShape(), isRoundedRect(), isRoundedRect(), itemHasEditableCorners(), libSaveSymbolDrawItem(), libSaveSymbolDrawItem(), DSN::SPECCTRA_DB::makeIMAGE(), RECTANGLE_POINT_EDIT_BEHAVIOR::MakePoints(), PCB_POINT_EDITOR::makePoints(), SCH_POINT_EDITOR::makePointsAndBehavior(), CONVERT_TOOL::makePolysFromClosedGraphics(), SCH_SCREEN::MarkConnections(), GRAPHICS_CLEANER::mergeRects(), ITEM_MODIFICATION_ROUTINE::ModifyLineOrDeleteIfZeroLength(), EDIT_TOOL::ModifyLines(), MoveOpenCourtyardItems(), SCH_SHAPE::Normalize(), PCB_POINT_EDITOR::OnSelectionChange(), PCB_VERTEX_EDITOR_PANE::OnSelectionChanged(), ALLEGRO::BOARD_BUILDER::GRAPHIC_KEY_HASH::operator()(), FOOTPRINT::cmp_drawings::operator()(), PCB_SHAPE::cmp_drawings::operator()(), operator==(), KICAD_FORMAT::LEGACY::orderFpShapes(), outlineProximity(), ALTIUM_PCB::Parse(), SCH_EDITOR_CONTROL::Paste(), ORCAD_CONVERTER::placeInstance(), SCH_RULE_AREA::Plot(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), processClosedShape(), OUTSET_ROUTINE::ProcessItem(), POLYGON_BOOLEAN_ROUTINE::ProcessShape(), processShapeSegment(), PCB_POINT_EDITOR::removeCorner(), CONSTRAINT_OVERLAY::render(), PCB_GRID_HELPER::ResolveSnap(), EDIT_TOOL::Rotate(), SCH_ELLIPSE_FIXTURE::RoundTrip(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveArc(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveBezier(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveCircle(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveRectangle(), SCH_IO_KICAD_SEXPR::saveShape(), SCH_WRITER_V10::saveShape(), SCH_WRITER_V9::saveShape(), SCH_IO_KICAD_LEGACY_LIB_CACHE::SaveSymbol(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveSymbolDrawItem(), SegmentIntersectsBoard(), CONVERT_TOOL::SegmentToArc(), SelectShapeAutoConstraints(), Serialize(), PCB_SHAPE::Serialize(), PCB_SHAPE::SetIsProxyItem(), SetLibShapeFillAndColor(), SetSchShapeFillAndColor(), PCB_IO_IPC2581::shapeHash(), shapeNeedsUpdate(), Similarity(), PCB_TEXTBOX::syncLibCoords(), tangentAtEndpoint(), AR_MATRIX::TracePcbShape(), CREEPAGE_GRAPH::TransformEdgeToCreepShapes(), PCB_TEXTBOX::TransformShapeToPolygon(), CREEPAGE_OVERLAY::Update(), PCB_POINT_EDITOR::updateItem(), PCB_CONTROL::UpdateMessagePanel(), and updateSegmentFromGeometryMgr().
|
inherited |
Copy an outline and apply line-ending body shortening when applicable.
Definition at line 4542 of file eda_shape.cpp.
References SHAPE_LINE_CHAIN::CPoints(), SHAPE_LINE_CHAIN::PointCount(), and ShortenBodyPolyPoints().
Referenced by BOARD_ADAPTER::addShape(), BOOST_AUTO_TEST_CASE(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), makeShortenedBodyShapes(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), and TransformWithLineEndingsToPolygon().
|
inlineinherited |
Return the starting point of the graphic.
Definition at line 283 of file eda_shape.h.
References m_start.
Referenced by EE_GRID_HELPER::AddConstructionItems(), PCB_GRID_HELPER::AddConstructionItems(), PCB_POINT_EDITOR::addCorner(), PAD::AddPrimitive(), FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), PCB_IO_IPC2581::addShape(), BOARD_CONSTRAINT_ADAPTER::ApplyReferenceValues(), ArcTangentSeedAt(), ArcTangentSeedNear(), GRAPHICS_CLEANER::areEquivalent(), AssertOutlineValid(), PCB_IO_KICAD_SEXPR_PARSER::bakeTextBoxLib(), BoardItemIntersectable(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), buildCarrier(), buildChainedClosedContour(), BuildConstraintFromItems(), CalcArcAngles(), calcEdit(), CHECK_ALL_COINCIDENT(), KI_TEST::CheckFpShape(), checkNormalizeIsStable(), ConnectBoardShapes(), constraintMemberForEditPoint(), ConstraintShapeAnchors(), PCB_EDIT_TABLE_TOOL::copyCell(), SCH_EDIT_TABLE_TOOL::copyCell(), CONVERT_TOOL::CreateLines(), doConvertOutlineToPolygon(), KIGFX::PCB_PAINTER::draw(), KI_ARC_EDIT::EditArcEndpointKeepCenter(), editArcEndpointKeepCenterAndRadius(), editArcEndpointKeepTangent(), extensionRay(), GENCAD_EXPORTER::footprintWriteShape(), PCB_IO_KICAD_SEXPR::format(), PCB_WRITER_V10::format(), PCB_WRITER_V10::format(), PCB_WRITER_V9::format(), PCB_WRITER_V9::format(), formatArc(), formatArc(), formatArc(), formatBezier(), formatBezier(), formatBezier(), formatCircle(), formatCircle(), formatCircle(), formatRect(), formatRect(), formatRect(), free_end(), PCB_TEXTBOX::GetBotRight(), getBoundingBox(), PCB_SHAPE::GetConnectionPoints(), GetEndingTangents(), PCB_SHAPE::GetFocusPosition(), GetLength(), GetLineEndingEndpoints(), PCB_TABLECELL::GetMsgPanelInfo(), PCB_TEXTBOX::GetMsgPanelInfo(), SCH_TABLECELL::GetMsgPanelInfo(), SCH_TEXTBOX::GetMsgPanelInfo(), GetRectCorners(), CADSTAR_SCH_ARCHIVE_LOADER::getScaledLibPart(), GetSegmentAngle(), GRAPH_CONNECTION::GetShapes(), SCH_TABLECELL::GetShownText(), SCH_TEXTBOX::GetShownText(), CONVERT_TOOL::getStartEndPoints(), GetTopLeft(), PCB_TEXTBOX::GetTopLeft(), GraphicEditArc(), hash_fp_item(), hashShape(), hitTest(), hitTest(), idf_append_shape(), SCH_SHAPE::IsEndPoint(), GRAPHICS_CLEANER::isNullShape(), libSaveTextBox(), libSaveTextBox(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadArc(), makeEffectiveShapes(), DSN::SPECCTRA_DB::makeIMAGE(), CONVERT_TOOL::makePolysFromChainedSegs(), makeShortenedBodyShapes(), SCH_SCREEN::MarkConnections(), GRAPHICS_CLEANER::mergeRects(), EDIT_TOOL::ModifyLines(), MoveOpenCourtyardItems(), PCB_SHAPE::Normalize(), PCB_SHAPE::NormalizeForCompare(), ALLEGRO::BOARD_BUILDER::GRAPHIC_KEY_HASH::operator()(), SCH_CONNECTIVITY::LIBRARY_SHAPE_FACT::operator==(), KICAD_FORMAT::LEGACY::orderFpShapes(), outlineProximity(), SCH_IO_ALTIUM::ParseEllipse(), SCH_EDITOR_CONTROL::Paste(), BRDITEMS_PLOTTER::PlotPcbTarget(), BRDITEMS_PLOTTER::PlotShape(), processClosedShape(), OUTSET_ROUTINE::ProcessItem(), DOGBONE_CORNER_ROUTINE::ProcessLinePair(), LINE_CHAMFER_ROUTINE::ProcessLinePair(), LINE_EXTENSION_ROUTINE::ProcessLinePair(), LINE_FILLET_ROUTINE::ProcessLinePair(), processShapeSegment(), CONSTRAINT_OVERLAY::render(), PCB_GRID_HELPER::ResolveSnap(), rotate(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveArc(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveBezier(), SCH_IO_KICAD_SEXPR::saveTextBox(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveTextBox(), SCH_WRITER_V10::saveTextBox(), SCH_WRITER_V9::saveTextBox(), SegmentIntersectsBoard(), PCB_SELECTION_TOOL::selectAllConnectedShapes(), Serialize(), GRAPHICS_IMPORTER::setupSplineOrLine(), ShapeGetMsgPanelInfo(), PCB_SHAPE::syncLibCoords(), tangentAtEndpoint(), PLOTTER::ThickArc(), AR_MATRIX::TracePcbShape(), DIALOG_TEXT_PROPERTIES::TransferDataFromWindow(), CREEPAGE_GRAPH::TransformEdgeToCreepShapes(), TransformShapeToPolygon(), TransformWithLineEndingsToPolygon(), CREEPAGE_OVERLAY::Update(), BEZIER_GEOM_SYNCER::updateBezier(), RECTANGLE_GEOM_SYNCER::updateCorners(), RECTANGLE_GEOM_SYNCER::updateCornerSize(), ARC_GEOM_SYNCER::updateCRAA(), ARC_GEOM_SYNCER::updateCSA(), LINE_GEOM_SYNCER::updateEnds(), PCB_POINT_EDITOR::updateItem(), LINE_GEOM_SYNCER::updatePolar(), ARC_GEOM_SYNCER::updateSME(), and LINE_GEOM_SYNCER::updateStartMidpoint().
|
inlineinherited |
Definition at line 179 of file eda_shape.h.
References IsClosed(), m_blankEnding, and m_startEnding.
Referenced by BOARD_ADAPTER::addShape(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), EXPORTER_STEP::buildGraphic3DShape(), canLowerLineEndings(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), PCB_IO_KICAD_SEXPR::format(), formatArc(), formatBezier(), formatPoly(), SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), ShortenedBezierCurve(), and unsafeLineEndings().
|
inlineinherited |
Definition at line 197 of file eda_shape.h.
References m_startEnding.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 207 of file eda_shape.h.
References m_startEnding.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 191 of file eda_shape.h.
References m_startEnding.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC(), and hasLineEndings().
|
inlineinherited |
Definition at line 199 of file eda_shape.h.
References m_startEnding.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 285 of file eda_shape.h.
References m_start.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC(), PCB_TEXTBOX::GetBotRight(), GetRectangleWidth(), PCB_TEXTBOX::GetTopLeft(), SCH_SHAPE::Normalize(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), and SetRectangleWidth().
|
inlineinherited |
Definition at line 284 of file eda_shape.h.
References m_start.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC(), PCB_TEXTBOX::GetBotRight(), GetRectangleHeight(), PCB_TEXTBOX::GetTopLeft(), SCH_SHAPE::Normalize(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), and SetRectangleHeight().
|
inlinevirtualinherited |
Reimplemented in PCB_TEXTBOX.
Definition at line 364 of file eda_shape.h.
References GetStart().
Referenced by KIGFX::PCB_PAINTER::draw(), RECTANGLE_POINT_EDIT_BEHAVIOR::MakePoints(), and RECTANGLE_POINT_EDIT_BEHAVIOR::UpdatePoints().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 165 of file eda_shape.h.
References m_stroke.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), SCH_TEXTBOX::Deserialize(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), getBoundingBox(), GetEffectiveWidth(), SCH_TEXTBOX::GetLegacyTextMargin(), PCB_SHAPE::GetWidth(), hitTest(), hitTest(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveArc(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveBezier(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveCircle(), SCH_IO_KICAD_LEGACY_LIB_CACHE::savePolyLine(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveRectangle(), SCH_TEXTBOX::Serialize(), DIALOG_TEXT_PROPERTIES::TransferDataToWindow(), TransformShapeToPolygon(), and TransformWithLineEndingsToPolygon().
|
protectedinherited |
Definition at line 763 of file eda_shape.cpp.
References m_hatchingCache.
Referenced by UpdateHatching().
|
protectedinherited |
Definition at line 772 of file eda_shape.cpp.
References m_hatchingCache.
Referenced by UpdateHatching().
|
protectedinherited |
Definition at line 1884 of file eda_shape.cpp.
References ARC, BEZIER, KIGEOM::BoxToLineChain(), buildShapeEllipse(), chain, CIRCLE, BOX2< Vec >::Contains(), SHAPE_ELLIPSE::ConvertToPolyline(), ELLIPSE, ELLIPSE_ARC, getBoundingBox(), getCenter(), GetEffectiveWidth(), GetEnd(), getMaxError(), BEZIER_POLY::GetPoly(), GetPolyShape(), GetRadius(), GetRectangleHeight(), GetRectangleWidth(), GetRectCorners(), GetStart(), GetWidth(), hasLineEnding(), BOX2< Vec >::Inflate(), BOX2< Vec >::Intersects(), BOX2< Vec >::IntersectsCircleEdge(), IsAnyFill(), m_bezierC1, m_bezierC2, m_bezierPoints, m_cornerRadius, m_end, m_endEnding, m_shape, m_start, m_startEnding, MakeEffectiveShapesWithLineEndings(), BOX2< Vec >::Normalize(), SHAPE_POLY_SET::Outline(), SHAPE_POLY_SET::OutlineCount(), POLY, RECTANGLE, SEGMENT, SHAPE_T_asString(), KIGEOM::ShapeHitTest(), ROUNDRECT::TransformToPolygon(), and UNIMPLEMENTED_FOR.
|
protectedinherited |
Definition at line 2108 of file eda_shape.cpp.
References GetEffectiveWidth(), hasLineEnding(), m_endEnding, m_startEnding, MakeEffectiveShapes(), MakeEffectiveShapesWithLineEndings(), and KIGEOM::ShapeHitTest().
|
protectedinherited |
Definition at line 1686 of file eda_shape.cpp.
References SHAPE_POLY_SET::Append(), ARC, BEZIER, buildShapeEllipse(), CalcArcAngles(), CIRCLE, Collide(), SHAPE::Collide(), SHAPE_POLY_SET::Collide(), SHAPE_POLY_SET::CollideEdge(), copy, VECTOR2< T >::Distance(), ELLIPSE, ELLIPSE_ARC, VECTOR2< T >::EuclideanNorm(), getCenter(), GetEffectiveWidth(), GetEnd(), GetHatching(), getMaxError(), BEZIER_POLY::GetPoly(), GetPolyShape(), GetRadius(), GetRectangleHeight(), GetRectangleWidth(), GetRectCorners(), GetStart(), GetWidth(), hasLineEnding(), IsClosed(), IsFilledForHitTesting(), IsHatchedFill(), IsProxyItem(), m_bezierC1, m_bezierC2, m_bezierPoints, m_cornerRadius, m_end, m_endEnding, m_shape, m_start, m_startEnding, MakeEffectiveShapesWithLineEndings(), SHAPE_POLY_SET::NewOutline(), EDA_ANGLE::Normalize(), POLY, radius, RECTANGLE, SEGMENT, SHAPE_T_asString(), SHAPE_ELLIPSE::SquaredDistance(), TestSegmentHit(), ROUNDRECT::TransformToPolygon(), and UNIMPLEMENTED_FOR.
Referenced by PCB_SHAPE::HitTest(), PCB_SHAPE::HitTest(), PCB_SHAPE::HitTest(), SCH_SHAPE::HitTest(), and SCH_SHAPE::HitTest().
|
inlineinherited |
Definition at line 120 of file eda_shape.h.
References GetFillMode(), and NO_FILL.
Referenced by computeArcBBox(), PCB_WRITER_V9::format(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), PCB_SHAPE::GetCoverageArea(), PCB_SHAPE::GetFocusPosition(), hitTest(), PAD::Recombine(), and PCB_SELECTION_TOOL::Selectable().
|
inherited |
Definition at line 1482 of file eda_shape.cpp.
References ARC, GetArcMid(), m_end, m_shape, m_start, SHAPE_T_asString(), UNIMPLEMENTED_FOR, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by FEATURES_MANAGER::AddShape(), and PCB_IO_IPC2581::addShape().
|
inherited |
Definition at line 675 of file eda_shape.cpp.
References ARC, BEZIER, CIRCLE, ELLIPSE, ELLIPSE_ARC, GetPolyShape(), SHAPE_LINE_CHAIN::IsClosed(), m_bezierPoints, m_shape, SHAPE_POLY_SET::Outline(), POLY, RECTANGLE, SEGMENT, SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by SCH_POINT_EDITOR::addCorner(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), canLowerLineEndings(), DIALOG_SHAPE_PROPERTIES::DIALOG_SHAPE_PROPERTIES(), GetEndEnding(), GetStartEnding(), hitTest(), PCB_SELECTION_TOOL::isExpandableGraphicShape(), CONVERT_TOOL::makePolysFromClosedGraphics(), CONVERT_TOOL::makePolysFromOpenGraphics(), SCH_SHAPE::Plot(), ShortenBodyPolyPoints(), and ShortenedBezierCurve().
|
inlinevirtualinherited |
Reimplemented in PCB_TABLECELL, SCH_RULE_AREA, and SCH_TABLECELL.
Definition at line 139 of file eda_shape.h.
References IsSolidFill().
Referenced by SCH_SELECTION_TOOL::GuessSelectionCandidates(), hitTest(), and makeEffectiveShapes().
|
inlineinherited |
Definition at line 132 of file eda_shape.h.
References CROSS_HATCH, GetFillMode(), HATCH, and REVERSE_HATCH.
Referenced by FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), BOOST_AUTO_TEST_CASE(), EXPORTER_STEP::buildGraphic3DShape(), KIGFX::PCB_PAINTER::draw(), EDIT_TOOL::Duplicate(), hitTest(), lowerHatchedFills(), makeEffectiveShapes(), makeShortenedBodyShapes(), omitHatchedFills(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), PCB_CONTROL::rehatchBoardItem(), TransformShapeToPolygon(), and TransformWithLineEndingsToPolygon().
|
inlineprotectedvirtualinherited |
Reimplemented in PCB_SHAPE, and SCH_SHAPE.
Definition at line 712 of file eda_shape.h.
Referenced by UpdateHatching().
|
inherited |
Definition at line 3086 of file eda_shape.cpp.
References GetPolyShape(), SHAPE_POLY_SET::Outline(), SHAPE_POLY_SET::OutlineCount(), and SHAPE_LINE_CHAIN::PointCount().
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), FabMaskShape(), PCB_IO_KICAD_SEXPR::format(), PCB_WRITER_V10::format(), PCB_WRITER_V9::format(), idf_append_shape(), BRDITEMS_PLOTTER::PlotShape(), TransformShapeToPolygon(), and TransformWithLineEndingsToPolygon().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 117 of file eda_shape.h.
References m_proxyItem.
Referenced by getFriendlyName(), hitTest(), makeEffectiveShapes(), makeShortenedBodyShapes(), ShowShape(), TransformShapeToPolygon(), and TransformWithLineEndingsToPolygon().
|
inlineinherited |
Definition at line 125 of file eda_shape.h.
References FILLED_SHAPE, FILLED_WITH_BG_BODYCOLOR, FILLED_WITH_COLOR, and GetFillMode().
Referenced by FEATURES_MANAGER::AddShape(), BOARD_ADAPTER::addShape(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), GetBoardItemWidth(), PCB_SHAPE::GetConnectionPoints(), PCB_SHAPE::GetSolderMaskExpansion(), IsFilledForHitTesting(), SCH_RULE_AREA::MakeEffectiveShapes(), makeEffectiveShapes(), makeShortenedBodyShapes(), BRDITEMS_PLOTTER::PlotShape(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), SCH_TABLECELL_DESC::SCH_TABLECELL_DESC(), DIALOG_TEXT_PROPERTIES::TransferDataToWindow(), TransformShapeToPolygon(), and TransformWithLineEndingsToPolygon().
|
inlinevirtualinherited |
Make a set of SHAPE objects representing the EDA_SHAPE.
Caller owns the objects.
| aEdgeOnly | indicates only edges should be generated (even if 0 width), and no fill shapes. |
Reimplemented in SCH_RULE_AREA, and SCH_SHAPE.
Definition at line 565 of file eda_shape.h.
References makeEffectiveShapes().
Referenced by BOARD_ADAPTER::addShape(), BOOST_AUTO_TEST_CASE(), KIGFX::PCB_PAINTER::draw(), hitTest(), MakeEffectiveShapesForStroking(), and DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run().
|
protectedinherited |
Make a set of SHAPE objects representing the EDA_SHAPE.
Caller owns the objects.
| aEdgeOnly | indicates only edges should be generated (even if 0 width), and no fill shapes. |
| aLineChainOnly | indicates SHAPE_POLY_SET is being abused slightly to represent a lineChain rather than a closed polygon. |
| aHittesting |
Definition at line 2386 of file eda_shape.cpp.
References ANGLE_360, ARC, SHAPE_LINE_CHAIN::Arc(), SHAPE_LINE_CHAIN::ArcIndex(), BEZIER, buildBezierToSegmentsPointsList(), buildShapeEllipse(), chain, CIRCLE, SHAPE_ELLIPSE::ConvertToPolyline(), SHAPE_POLY_SET::COutline(), SHAPE_LINE_CHAIN::CSegment(), ELLIPSE, ELLIPSE_ARC, GetArcAngle(), getCenter(), GetEffectiveWidth(), GetEnd(), getMaxError(), GetPolyShape(), GetRadius(), GetRectangleHeight(), GetRectangleWidth(), GetRectCorners(), GetStart(), SHAPE_LINE_CHAIN::IsArcSegment(), SHAPE_LINE_CHAIN::IsClosed(), IsFilledForHitTesting(), IsHatchedFill(), IsProxyItem(), IsSolidFill(), m_arcCenter, m_cornerRadius, m_end, m_shape, m_start, SHAPE_POLY_SET::Outline(), SHAPE_POLY_SET::OutlineCount(), POLY, RECTANGLE, SEGMENT, SHAPE_LINE_CHAIN::Segment(), SHAPE_LINE_CHAIN::SegmentCount(), SHAPE_T_asString(), ROUNDRECT::TransformToPolygon(), and UNIMPLEMENTED_FOR.
Referenced by MakeEffectiveShapes(), SCH_SHAPE::MakeEffectiveShapes(), MakeEffectiveShapesForHitTesting(), and makeShortenedBodyShapes().
|
inlinevirtualinherited |
Definition at line 585 of file eda_shape.h.
References makeEffectiveShapes().
Referenced by SCH_SELECTION_TOOL::GuessSelectionCandidates(), and PCB_SELECTION_TOOL::hitTestDistance().
|
inherited |
Make a set of SHAPE objects to hand to STROKE_PARAMS::Stroke().
A Bezier comes back as one SHAPE_LINE_CHAIN and an ellipse as one SHAPE_ELLIPSE, so the pattern runs continuously along the curve instead of restarting at every point of its polyline approximation. Every other shape comes from MakeEffectiveShapes(), edges only.
If the shape has line endings that consume part of the body, the body is shortened accordingly (a shortened Bezier still comes back as one SHAPE_LINE_CHAIN).
Caller owns the objects.
| aLineWidth | is the width used to size the line endings; -1 uses GetEffectiveWidth() (callers whose width is resolved externally, e.g. by render settings, must pass it explicitly). |
Definition at line 2334 of file eda_shape.cpp.
References ARC, BEZIER, buildBezierToSegmentsPointsList(), buildShapeEllipse(), ELLIPSE, ELLIPSE_ARC, GetEffectiveWidth(), getMaxError(), m_endEnding, m_shape, m_startEnding, MakeEffectiveShapes(), makeShortenedBodyShapes(), POLY, SEGMENT, and ShortenedBezierPolyline().
Referenced by BOARD_ADAPTER::addShape(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), EXPORTER_STEP::buildGraphic3DShape(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), drawPcbShapeWithStyle(), and BRDITEMS_PLOTTER::PlotShape().
|
inherited |
Make effective geometry for the shape body shortened for line endings plus the line-ending geometry itself.
Caller owns the objects.
Definition at line 2750 of file eda_shape.cpp.
References MakeLineEndingEffectiveShapes(), and makeShortenedBodyShapes().
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), PCB_SHAPE::GetEffectiveShape(), SCH_LINE::HitTest(), SCH_LINE::HitTest(), SCH_LINE::HitTest(), hitTest(), hitTest(), hitTest(), and PNS_KICAD_IFACE_BASE::syncGraphicalItem().
|
inherited |
Make the line-ending geometry associated with this shape.
Caller owns the objects.
Definition at line 2613 of file eda_shape.cpp.
References addLineEndingEffectiveShapes(), GetEndingTangents(), GetLineEndingEndpoints(), hasLineEnding(), m_endEnding, and m_startEnding.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and MakeEffectiveShapesWithLineEndings().
|
protectedinherited |
Make effective geometry for the shape body shortened for line endings, without the line-ending geometry itself.
Falls back to makeEffectiveShapes() when no shortening applies.
Caller owns the objects.
Definition at line 2637 of file eda_shape.cpp.
References ARC, BEZIER, buildShapeEllipse(), CalcArcAngles(), chain, SHAPE_ELLIPSE::ConvertToPolyline(), SHAPE_POLY_SET::COutline(), ELLIPSE_ARC, end, GetEffectiveWidth(), GetEnd(), getMaxError(), GetPolyShape(), GetRadius(), GetShortenedBodyPolyPoints(), GetStart(), SHAPE_LINE_CHAIN::IsClosed(), IsHatchedFill(), IsProxyItem(), IsSolidFill(), m_arcCenter, m_endEnding, m_shape, m_startEnding, makeEffectiveShapes(), SHAPE_POLY_SET::OutlineCount(), SHAPE_LINE_CHAIN::PointCount(), POLY, RotatePoint(), SEGMENT, ShortenArcForEndings(), ShortenedBezierPolyline(), and ShortenSegmentForEndings().
Referenced by MakeEffectiveShapesForStroking(), and MakeEffectiveShapesWithLineEndings().
|
protectedinherited |
Definition at line 960 of file eda_shape.cpp.
References SEG::A, ARC, SEG::B, BEZIER, CIRCLE, ELLIPSE, ELLIPSE_ARC, GetPolyShape(), KI_FALLTHROUGH, m_arcCenter, m_arcMidData, m_bezierC1, m_bezierC2, m_bezierPoints, m_ellipse, m_end, m_hatchingCache, m_hatchingDirty, m_shape, m_start, SHAPE_POLY_SET::Move(), POLY, RECTANGLE, SEGMENT, SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by SCH_TEXTBOX::Move().
|
inherited |
Definition at line 3859 of file eda_shape.cpp.
References ARC, BEZIER, ELLIPSE< NumericType >::Center, CIRCLE, SHAPE_POLY_SET::CVertex(), EDA_SHAPE(), ELLIPSE, ELLIPSE_ARC, ELLIPSE< NumericType >::EndAngle, STROKE_PARAMS::GetLineStyle(), GetPolyShape(), GetShape(), STROKE_PARAMS::GetWidth(), m_arcCenter, m_bezierC1, m_bezierC2, m_bezierPoints, m_ellipse, m_end, m_endEnding, m_fill, m_fillColor, m_shape, m_start, m_startEnding, m_stroke, ELLIPSE< NumericType >::MajorRadius, ELLIPSE< NumericType >::MinorRadius, POLY, RECTANGLE, ELLIPSE< NumericType >::Rotation, SEGMENT, ELLIPSE< NumericType >::StartAngle, and SHAPE_POLY_SET::TotalVertices().
Referenced by PCB_SHAPE::operator==(), and SCH_SHAPE::operator==().
|
inlineinherited |
Definition at line 555 of file eda_shape.h.
References getMaxError(), and RebuildBezierToSegmentsPointsList().
Referenced by beginEdit(), calcEdit(), Deserialize(), flip(), PCB_SHAPE::rebakeFromTransform(), RebuildBezierToSegmentsPointsList(), and scale().
|
inherited |
Rebuild the m_bezierPoints vertex list that approximate the Bezier curve by a list of segments.
Has meaning only for BEZIER shape.
| aMaxError | is the max deviation between the polyline and the curve. |
Definition at line 1212 of file eda_shape.cpp.
References BEZIER, buildBezierToSegmentsPointsList(), m_bezierPoints, and m_shape.
Referenced by KI_TEST::addBezier(), TARGET3001_PCB_BUILDER::addShape(), SCH_IO_GEDA::addSymbolGraphic(), BEZIER_DRAW_BEHAVIOR::ApplyToShape(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BuildCreepageBoardEdges(), idf_append_shape(), GRAPHICS_CLEANER::isNullShape(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadBezier(), makeBezierChain(), SCH_IO_ALTIUM::ParseBezier(), SCH_IO_ALTIUM::ParseEllipse(), SCH_IO_ALTIUM::ParseEllipticalArc(), SCH_SHAPE::Plot(), processShapeSegment(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), and GRAPHICS_IMPORTER::setupSplineOrLine().
|
protectedinherited |
When m_shape == ELLIPSE_ARC, recompute m_start/m_end from m_ellipse.
No-op for other shapes.
Definition at line 1251 of file eda_shape.cpp.
References ELLIPSE, ELLIPSE_ARC, KiROUND(), m_arcCenter, m_editState, m_ellipse, m_end, m_shape, and m_start.
Referenced by endEdit(), flip(), rotate(), scale(), SetCenter(), SetEllipseCenter(), SetEllipseEndAngle(), SetEllipseMajorRadius(), SetEllipseMinorRadius(), SetEllipseRotation(), and SetEllipseStartAngle().
Definition at line 1088 of file eda_shape.cpp.
References ARC, BEZIER, CIRCLE, ELLIPSE, ELLIPSE_ARC, getMaxError(), GetPolyShape(), GetRectangleHeight(), GetRectangleWidth(), GetStart(), EDA_ANGLE::IsCardinal(), m_arcCenter, m_arcMidData, m_bezierC1, m_bezierC2, m_bezierPoints, m_cornerRadius, m_ellipse, m_end, m_hatchingDirty, m_shape, m_start, POLY, recalcEllipseArcEndpoints(), RECTANGLE, SHAPE_POLY_SET::Rotate(), RotatePoint(), SEGMENT, SetShape(), SHAPE_T_asString(), ROUNDRECT::TransformToPolygon(), and UNIMPLEMENTED_FOR.
Referenced by PCB_SHAPE::Rotate(), and SCH_SHAPE::Rotate().
|
protectedinherited |
Definition at line 1024 of file eda_shape.cpp.
References std::abs(), ARC, BEZIER, CIRCLE, ELLIPSE, ELLIPSE_ARC, getMaxError(), GetPolyShape(), KI_FALLTHROUGH, KiROUND(), m_arcCenter, m_bezierC1, m_bezierC2, m_ellipse, m_end, m_hatchingDirty, m_shape, m_start, SHAPE_POLY_SET::OutlineCount(), POLY, RebuildBezierToSegmentsPointsList(), recalcEllipseArcEndpoints(), RECTANGLE, SEGMENT, SetPolyPoints(), SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
|
overridevirtualinherited |
Serializes this object to the given Any message.
The Any message's concrete type will be specific to the object in question.
| aContainer | will be filled with a message describing this object |
Reimplemented from SERIALIZABLE.
Reimplemented in PCB_SHAPE, PCB_TABLECELL, PCB_TEXTBOX, SCH_RULE_AREA, SCH_SHAPE, SCH_TABLECELL, and SCH_TEXTBOX.
Definition at line 247 of file eda_shape.cpp.
References pcbIUScale, and Serialize().
Referenced by API_HANDLER_COMMON::handleGetTextAsShapes(), Serialize(), Serialize(), PCB_SHAPE::Serialize(), SCH_RULE_AREA::Serialize(), and SCH_SHAPE::Serialize().
|
inherited |
Definition at line 355 of file eda_shape.cpp.
References Serialize().
|
inherited |
Definition at line 253 of file eda_shape.cpp.
References ARC, BEZIER, CIRCLE, circle(), ELLIPSE, ELLIPSE_ARC, GetArcMid(), GetBezierC1(), GetBezierC2(), GetCornerRadius(), GetEllipseCenter(), GetEllipseEndAngle(), GetEllipseMajorRadius(), GetEllipseMinorRadius(), GetEllipseRotation(), GetEllipseStartAngle(), GetEnd(), GetFillMode(), GetPolyShape(), GetShape(), GetStart(), m_endEnding, m_fillColor, m_startEnding, m_stroke, NONE, kiapi::common::PackColor(), kiapi::common::PackDistance(), kiapi::common::PackLineEnding(), kiapi::common::PackPolySet(), kiapi::common::PackStroke(), kiapi::common::PackVector2(), POLY, RECTANGLE, SEGMENT, ToProtoEnum(), and COLOR4D::UNSPECIFIED.
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 449 of file eda_shape.h.
References SetArcAngleAndEnd().
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC(), and PCB_SHAPE::SetArcAngle().
|
inherited |
Set the end point from the angle center and start.
aAngle is:
Definition at line 1499 of file eda_shape.cpp.
References ANGLE_0, m_arcCenter, m_end, m_endsSwapped, m_start, EDA_ANGLE::Normalize720(), and RotatePoint().
Referenced by BOOST_AUTO_TEST_CASE(), SCH_IO_EAGLE::loadSymbolWire(), ARC_DRAW_BEHAVIOR::OnProperties(), SetArcAngle(), and PCB_SHAPE::SetArcAngleAndEnd().
|
virtualinherited |
Set the three controlling points for an arc.
NB: these are NOT what's currently stored, so we have to do some calculations behind the scenes. However, they are what SHOULD be stored.
Reimplemented in PCB_SHAPE.
Definition at line 1431 of file eda_shape.cpp.
References CalcArcCenter(), GetArcMid(), m_arcCenter, m_arcMidData, m_end, m_endsSwapped, m_start, SetCachedArcData(), and VECTOR2< T >::SquaredEuclideanNorm().
Referenced by appendGraphicPrimitive(), ARC_DRAW_BEHAVIOR::ApplyToShape(), beginEdit(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), calcEdit(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::createShapes(), Deserialize(), editArcMidKeepEndpoints(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadArc(), CADSTAR_SCH_ARCHIVE_LOADER::loadShapeVertices(), TARGET3001_SCH_BUILDER::makeGraphic(), SCH_SCREEN::Plot(), SCH_SHAPE::Plot(), PCB_SHAPE::rebakeFromTransform(), PCB_SHAPE::SetArcGeometry(), SCH_SHAPE::SetArcOrLine(), and SetArcOrSegment().
|
inherited |
Set the shape from three points, falling back to a SEGMENT from aStart to aEnd when the points are collinear and so have no finite arc center.
Definition at line 1416 of file eda_shape.cpp.
References IsStraightArc(), SEGMENT, SetArcGeometry(), SetEnd(), SetShape(), and SetStart().
Referenced by DIPTRACE::PCB_PARSER::CreateBoardOutline().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 372 of file eda_shape.h.
References m_bezierC1.
Referenced by SCH_IO_GEDA::addSymbolGraphic(), ORCAD_CONVERTER::addSymbolPrimitive(), BEZIER_DRAW_BEHAVIOR::ApplyToShape(), beginEdit(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), calcEdit(), Deserialize(), HelperGeneratePowerPortGraphics(), HelperGeneratePowerPortGraphics(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadBezier(), SCH_IO_ALTIUM::ParseBezier(), SCH_IO_ALTIUM::ParseEllipse(), SCH_IO_ALTIUM::ParseEllipticalArc(), ORCAD_CONVERTER::placeGraphics(), SCH_SHAPE::Plot(), PCB_SHAPE::rebakeFromTransform(), and PCB_SHAPE::SetBezierC1().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 375 of file eda_shape.h.
References m_bezierC2.
Referenced by SCH_IO_GEDA::addSymbolGraphic(), ORCAD_CONVERTER::addSymbolPrimitive(), BEZIER_DRAW_BEHAVIOR::ApplyToShape(), beginEdit(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), calcEdit(), Deserialize(), HelperGeneratePowerPortGraphics(), HelperGeneratePowerPortGraphics(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadBezier(), SCH_IO_ALTIUM::ParseBezier(), SCH_IO_ALTIUM::ParseEllipse(), SCH_IO_ALTIUM::ParseEllipticalArc(), ORCAD_CONVERTER::placeGraphics(), SCH_SHAPE::Plot(), PCB_SHAPE::rebakeFromTransform(), and PCB_SHAPE::SetBezierC2().
|
inlinevirtualinherited |
Reimplemented in PCB_TEXTBOX.
Definition at line 370 of file eda_shape.h.
References SetEndY().
Referenced by BOOST_FIXTURE_TEST_CASE().
|
inherited |
Set the data used for mid point caching.
If the controlling points remain constant, then we keep the midpoint the same as it was when read in. This minimizes VCS churn.
| aStart | Cached start point. |
| aMid | Cached mid point. |
| aEnd | Cached end point. |
| aCenter | Calculated center point using the preceeding three. |
Definition at line 1406 of file eda_shape.cpp.
References m_arcMidData.
Referenced by SetArcGeometry().
|
virtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 1320 of file eda_shape.cpp.
References ARC, CIRCLE, delta, ELLIPSE, ELLIPSE_ARC, m_arcCenter, m_ellipse, m_end, m_hatchingDirty, m_shape, m_start, recalcEllipseArcEndpoints(), SetEnd(), SetStart(), SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by SCH_IO_LTSPICE_PARSER::AddAscArc(), SCH_IO_GEDA::addSymbolGraphic(), ARC_DRAW_BEHAVIOR::ApplyToShape(), ELLIPSE_ARC_DRAW_BEHAVIOR::ApplyToShape(), BOOST_AUTO_TEST_CASE(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::createShape(), SCH_IO_LTSPICE_PARSER::CreateSymArc(), editArcCenterKeepEndpoints(), KI_ARC_EDIT::EditArcEndpointKeepCenter(), editArcEndpointKeepTangent(), SCH_IO_EAGLE::loadSymbolWire(), TARGET3001_SCH_BUILDER::makeGraphic(), SCH_IO_ALTIUM::ParseArc(), and PCB_SHAPE::SetCenter().
|
inlineinherited |
Definition at line 319 of file eda_shape.h.
References m_end, m_hatchingDirty, m_start, SetEnd(), SetStart(), and VECTOR2< T >::x.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 308 of file eda_shape.h.
References m_end, m_hatchingDirty, m_start, SetEnd(), SetStart(), and VECTOR2< T >::y.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
virtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 611 of file eda_shape.cpp.
References std::abs(), GetRectangleHeight(), GetRectangleWidth(), m_cornerRadius, m_hatchingDirty, m_shape, and RECTANGLE.
Referenced by addTransformFeatures(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), Deserialize(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), PCB_SHAPE::rebakeFromTransform(), roundedRectToPolygon(), and PCB_SHAPE::SetCornerRadius().
|
inlineprotectedinherited |
Definition at line 710 of file eda_shape.h.
References m_editState.
Referenced by PCB_SHAPE::SetEditState(), and SCH_SHAPE::SetEditState().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 378 of file eda_shape.h.
References m_ellipse, m_hatchingDirty, and recalcEllipseArcEndpoints().
Referenced by addTransformFeatures(), beginEdit(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), calcEdit(), Deserialize(), SCH_IO_KICAD_SEXPR_PARSER::parseEllipseBody(), PCB_SHAPE::rebakeFromTransform(), PCB_SHAPE::SetEllipseCenter(), and PCB_SHAPE::SetLibraryEllipse().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 424 of file eda_shape.h.
References m_ellipse, m_hatchingDirty, and recalcEllipseArcEndpoints().
Referenced by addTransformFeatures(), ELLIPSE_ARC_DRAW_BEHAVIOR::ApplyToShape(), beginEdit(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), calcEdit(), Deserialize(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), SCH_IO_KICAD_SEXPR_PARSER::parseEllipseBody(), PCB_SHAPE::rebakeFromTransform(), PCB_SHAPE::SetEllipseEndAngle(), and PCB_SHAPE::SetLibraryEllipse().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 387 of file eda_shape.h.
References m_ellipse, m_hatchingDirty, and recalcEllipseArcEndpoints().
Referenced by addTransformFeatures(), ELLIPSE_ARC_DRAW_BEHAVIOR::ApplyToShape(), beginEdit(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), calcEdit(), Deserialize(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), SCH_IO_KICAD_SEXPR_PARSER::parseEllipseBody(), PCB_SHAPE::rebakeFromTransform(), PCB_SHAPE::SetEllipseMajorRadius(), and PCB_SHAPE::SetLibraryEllipse().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 396 of file eda_shape.h.
References m_ellipse, m_hatchingDirty, and recalcEllipseArcEndpoints().
Referenced by addTransformFeatures(), ELLIPSE_ARC_DRAW_BEHAVIOR::ApplyToShape(), beginEdit(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), calcEdit(), Deserialize(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), SCH_IO_KICAD_SEXPR_PARSER::parseEllipseBody(), PCB_SHAPE::rebakeFromTransform(), PCB_SHAPE::SetEllipseMinorRadius(), and PCB_SHAPE::SetLibraryEllipse().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 405 of file eda_shape.h.
References m_ellipse, m_hatchingDirty, and recalcEllipseArcEndpoints().
Referenced by ELLIPSE_ARC_DRAW_BEHAVIOR::ApplyToShape(), beginEdit(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), calcEdit(), Deserialize(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), SCH_IO_KICAD_SEXPR_PARSER::parseEllipseBody(), PCB_SHAPE::rebakeFromTransform(), PCB_SHAPE::SetEllipseRotation(), and PCB_SHAPE::SetLibraryEllipse().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 415 of file eda_shape.h.
References m_ellipse, m_hatchingDirty, and recalcEllipseArcEndpoints().
Referenced by addTransformFeatures(), ELLIPSE_ARC_DRAW_BEHAVIOR::ApplyToShape(), beginEdit(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), calcEdit(), Deserialize(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), SCH_IO_KICAD_SEXPR_PARSER::parseEllipseBody(), PCB_SHAPE::rebakeFromTransform(), PCB_SHAPE::SetEllipseStartAngle(), and PCB_SHAPE::SetLibraryEllipse().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 337 of file eda_shape.h.
References m_end, m_endsSwapped, and m_hatchingDirty.
Referenced by SCH_IO_LTSPICE_PARSER::AddAscArc(), SCH_IO_LTSPICE_PARSER::AddAscRect(), SCH_IO_ALTIUM::AddLibTextBox(), SCH_IO_GEDA::addSymbolGraphic(), ORCAD_CONVERTER::addSymbolPrimitive(), SCH_IO_ALTIUM::AddTextBox(), addTransformFeatures(), appendGraphicPrimitive(), ARC_DRAW_BEHAVIOR::ApplyToShape(), BEZIER_DRAW_BEHAVIOR::ApplyToShape(), beginEdit(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::BuildKiCadPowerSymbol(), calcEdit(), SCH_EDIT_TOOL::ChangeTextType(), SCH_EDIT_TABLE_TOOL::copyCell(), SCH_IO_GEDA::createFallbackSymbol(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::createShape(), DIPTRACE::SCH_PARSER::createSheetShapes(), SCH_IO_LTSPICE_PARSER::CreateSymArc(), SCH_IO_LTSPICE_PARSER::CreateSymCircle(), SCH_IO_LTSPICE_PARSER::CreateSymRect(), Deserialize(), SCH_TEXTBOX::Deserialize(), SCH_DRAWING_TOOLS::DrawTable(), KI_ARC_EDIT::EditArcEndpointKeepCenter(), editArcEndpointKeepCenterAndRadius(), editArcEndpointKeepTangent(), KI_ARC_EDIT::EditArcMidKeepCenter(), CADSTAR_SCH_ARCHIVE_LOADER::getScaledLibPart(), HelperGeneratePowerPortGraphics(), HelperGeneratePowerPortGraphics(), lineEndingShape(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadArc(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadBezier(), CADSTAR_SCH_ARCHIVE_LOADER::loadLibrarySymbolShapeVertices(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadRect(), SCH_IO_EAGLE::loadSymbolRectangle(), TARGET3001_SCH_BUILDER::makeGraphic(), SCH_TABLE::Normalize(), PCB_TEXTBOX::OnFootprintTransformed(), SCH_IO_ALTIUM::ParseArc(), SCH_IO_ALTIUM::ParseBezier(), SCH_IO_ALTIUM::ParseEllipse(), SCH_IO_ALTIUM::ParseEllipticalArc(), SCH_IO_ALTIUM::ParseRectangle(), SCH_IO_ALTIUM::ParseRoundRectangle(), SCH_IO_KICAD_SEXPR_PARSER::parseSchTextBoxContent(), ORCAD_CONVERTER::placeGraphics(), SCH_SHAPE::Plot(), SCH_TEXTBOX::Plot(), PCB_SHAPE::rebakeFromTransform(), PCB_TEXTBOX::Rotate(), SetArcOrSegment(), SetCenter(), SetCenterX(), SetCenterY(), PCB_SHAPE::SetEnd(), SetEndX(), SetEndY(), SetRadius(), and DIALOG_TEXT_PROPERTIES::TransferDataFromWindow().
|
inlineinherited |
Definition at line 189 of file eda_shape.h.
References m_endEnding.
Referenced by addTransformFeatures(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), clearLineEndings(), and lineEndingShape().
|
inlineinherited |
Definition at line 203 of file eda_shape.h.
References m_endEnding.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 210 of file eda_shape.h.
References m_endEnding.
Referenced by BOOST_AUTO_TEST_CASE(), and EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 195 of file eda_shape.h.
References m_endEnding.
Referenced by addTransformFeatures(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 205 of file eda_shape.h.
References m_endEnding.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 351 of file eda_shape.h.
References m_end, SetEnd(), and VECTOR2< T >::x.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC(), SCH_SHAPE::Normalize(), PCB_TEXTBOX::SetLeft(), SetRectangleWidth(), SetRight(), and PCB_TEXTBOX::SetRight().
|
inlineinherited |
Definition at line 344 of file eda_shape.h.
References m_end, SetEnd(), and VECTOR2< T >::y.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC(), SCH_SHAPE::Normalize(), SetBottom(), PCB_TEXTBOX::SetBottom(), SetRectangleHeight(), and PCB_TEXTBOX::SetTop().
|
inlineinherited |
Definition at line 162 of file eda_shape.h.
References m_fillColor.
Referenced by SCH_IO_ALTIUM::AddLibTextBox(), SCH_IO_ALTIUM::AddTextBox(), Deserialize(), SCH_TEXTBOX::Deserialize(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), fixupSchFillMode(), lineEndingPolygons(), SCH_IO_ALTIUM::ParseEllipse(), SCH_IO_KICAD_SEXPR_PARSER::parseEllipseBody(), SCH_IO_KICAD_SEXPR_PARSER::parseSchTextBoxContent(), ORCAD_CONVERTER::placeHierarchicalBlockPinFill(), SCH_TABLECELL_DESC::SCH_TABLECELL_DESC(), SetLibShapeFillAndColor(), SetSchShapeFillAndColor(), and DIALOG_TEXT_PROPERTIES::TransferDataFromWindow().
|
inlinevirtualinherited |
Reimplemented in SCH_SHAPE.
Definition at line 144 of file eda_shape.h.
References setFilled().
Referenced by FEATURES_MANAGER::AddDimension(), PAD::AddPrimitivePoly(), PAD::AddPrimitivePoly(), TARGET3001_PCB_BUILDER::addShape(), EASYPC_PCB::AddShapeItem(), altiumMakePadLayerCustom(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), ALLEGRO::BOARD_BUILDER::buildFootprint(), TARGET3001_PCB_BUILDER::buildSignalCopper(), ZONE_CREATE_HELPER::commitZone(), ALTIUM_PCB::ConvertFills6ToBoardItem(), ALTIUM_PCB::ConvertFills6ToFootprintItem(), ALTIUM_PCB::ConvertFills6ToPcbShape(), DRAWING_TOOL::ConvertImageToOutlines(), DIPTRACE::PCB_PARSER::CreateFootprint(), CONVERT_TOOL::CreateLines(), MICROWAVE_TOOL::createPolygonShape(), CONVERT_TOOL::CreatePolys(), DRAWING_TOOL::DrawRectangle(), DRAWING_TOOL::drawShape(), PCB_IO_AUTOTRAX::emitFill(), ALTIUM_PCB::HelperParsePad6NonCopper(), PCB_IO_PADS_BINARY::loadCopperShapes(), FABMASTER::loadGraphics(), PCB_IO_EAGLE::loadPlain(), FABMASTER::loadPolygon(), PCB_IO_PADS_BINARY::loadZones(), CONVERT_TOOL::makePolysFromClosedGraphics(), GRAPHICS_CLEANER::mergeRects(), PCB_IO_EAGLE::packageCircle(), PCB_IO_EAGLE::packagePolygon(), PCB_IO_EAGLE::packageRectangle(), BRDITEMS_PLOTTER::PlotDimension(), BRDITEMS_PLOTTER::PlotPcbTarget(), SPRINT_LAYOUT_PARSER::processPoly(), PAD::Recombine(), DRAWING_TOOL::runSimpleShapeDraw(), SCH_TABLECELL_DESC::SCH_TABLECELL_DESC(), CONVERT_TOOL::SegmentToArc(), and SetFillModeProp().
|
inlineprotectedvirtualinherited |
Reimplemented in SCH_SHAPE.
Definition at line 673 of file eda_shape.h.
References FILLED_SHAPE, m_fill, and NO_FILL.
Referenced by SetFilled().
|
inherited |
Definition at line 708 of file eda_shape.cpp.
References m_fill, and m_hatchingDirty.
Referenced by SCH_IO_ALTIUM::AddLibTextBox(), addOrcadSymbolHatch(), ORCAD_CONVERTER::addSymbolArc(), SCH_IO_GEDA::addSymbolGraphic(), ORCAD_CONVERTER::addSymbolPin(), ORCAD_CONVERTER::addSymbolPrimitive(), SCH_IO_ALTIUM::AddTextBox(), addTransformFeatures(), addTransformFeatures(), appendGraphicPrimitive(), applyGeometry(), barcodeToShapes(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::BuildKiCadPowerSymbol(), SCH_EDIT_TOOL::ConvertImageToOutlines(), PANEL_EESCHEMA_COLOR_SETTINGS::createPreviewItems(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::createShape(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::createShapes(), SCH_IO_LTSPICE_PARSER::CreateSymRect(), Deserialize(), SCH_TEXTBOX::Deserialize(), CADSTAR_PCB_ARCHIVE_LOADER::drawCadstarShape(), ellipseToPolygon(), fixupSchFillMode(), lineEndingPolygons(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadArc(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadBezier(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadPolyLine(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadRect(), SCH_IO_EAGLE::loadSymbolPolyLine(), SCH_IO_EAGLE::loadSymbolRectangle(), SCH_IO_EAGLE::loadSymbolWire(), CADSTAR_SCH_ARCHIVE_LOADER::loadSymdef(), lowerHatchedFills(), lowerLineEndingShape(), CONVERT_TOOL::makePolysFromClosedGraphics(), omitHatchedFills(), OrcadHatchLines(), SCH_IO_ALTIUM::ParseEllipse(), SCH_IO_KICAD_SEXPR_PARSER::parseEllipseBody(), SCH_IO_KICAD_SEXPR_PARSER::parseSchTextBoxContent(), ORCAD_CONVERTER::placeGraphics(), ORCAD_CONVERTER::placeHierarchicalBlockPinFill(), SCH_IO_PCAD::populateScreen(), PAD::Recombine(), SCH_SHAPE_DESC::SCH_SHAPE_DESC(), SetFillModeProp(), SetLibShapeFillAndColor(), SetSchShapeFillAndColor(), and DIALOG_TEXT_PROPERTIES::TransferDataFromWindow().
|
inherited |
Definition at line 715 of file eda_shape.cpp.
References CROSS_HATCH, HATCH, NO_FILL, NONE, REVERSE_HATCH, SetFilled(), and SetFillMode().
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 155 of file eda_shape.h.
References m_hatchingDirty.
Referenced by BOOST_AUTO_TEST_CASE(), SCH_POINT_EDITOR::removeCorner(), and SCH_POINT_EDITOR::Reset().
|
inlinevirtualinherited |
|
inlinevirtualinherited |
|
inlineinherited |
Definition at line 173 of file eda_shape.h.
References m_stroke.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC(), and SCH_SCREEN::Plot().
|
inherited |
Definition at line 3844 of file eda_shape.cpp.
References m_stroke.
Referenced by BOOST_AUTO_TEST_CASE(), SCH_TEXTBOX::Deserialize(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), CADSTAR_SCH_ARCHIVE_LOADER::loadShapeVertices(), lowerLineEndingShape(), SCH_IO_ALTIUM::ParseLine(), PCB_TEXTBOX_DESC::PCB_TEXTBOX_DESC(), and SCH_SCREEN::Plot().
|
inherited |
Definition at line 2322 of file eda_shape.cpp.
References SHAPE_POLY_SET::Append(), GetPolyShape(), m_hatchingDirty, SHAPE_POLY_SET::NewOutline(), and SHAPE_POLY_SET::RemoveAllContours().
Referenced by KI_TEST::addPoly(), PAD::AddPrimitivePoly(), PCAD2KICAD::PCAD_POLYGON::AddToBoard(), addTransformFeatures(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), MICROWAVE_TOOL::createPolygonShape(), ellipseToPolygon(), ALTIUM_PCB::HelperParsePad6NonCopper(), PCB_IO_EAGLE::packagePolygon(), PCB_IO_EAGLE::packageRectangle(), roundedRectToPolygon(), and scale().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 528 of file eda_shape.h.
References SHAPE_POLY_SET::Fracture(), GetPolyShape(), m_hatchingDirty, and SHAPE_POLY_SET::OutlineCount().
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), Deserialize(), TEST_EE_ITEM_FIXTURE::Instantiate(), lineEndingPolygons(), CADSTAR_SCH_ARCHIVE_LOADER::loadSymdef(), SCH_SHAPE::Plot(), and PCB_SHAPE::SetPolyShape().
|
protectedinherited |
Definition at line 525 of file eda_shape.cpp.
References getPosition(), and move.
Referenced by PCB_SHAPE::SetPosition(), and SCH_SHAPE::SetPosition().
|
inlineinherited |
Definition at line 358 of file eda_shape.h.
References m_hatchingDirty, m_start, and SetEnd().
Referenced by TARGET3001_PCB_BUILDER::addShape(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), FabMaskShape(), and CIRCLE_GEOM_SYNCER::OnCenterRadiusChange().
|
inherited |
Definition at line 660 of file eda_shape.cpp.
References m_shape, RECTANGLE, SetRectangleHeight(), SetRectangleWidth(), SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
|
inherited |
Definition at line 630 of file eda_shape.cpp.
References GetStartY(), m_rectangleHeight, m_shape, RECTANGLE, SetEndY(), SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC(), FabMaskShape(), TEST_BOARD_ITEM_FIXTURE::Instantiate(), PCB_TABLECELL::PCB_TABLECELL(), and SetRectangle().
|
inherited |
Definition at line 645 of file eda_shape.cpp.
References GetStartX(), m_rectangleWidth, m_shape, RECTANGLE, SetEndX(), SHAPE_T_asString(), and UNIMPLEMENTED_FOR.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC(), FabMaskShape(), TEST_BOARD_ITEM_FIXTURE::Instantiate(), PCB_TABLECELL::PCB_TABLECELL(), and SetRectangle().
|
inlinevirtualinherited |
Reimplemented in PCB_TEXTBOX.
Definition at line 369 of file eda_shape.h.
References SetEndX().
Referenced by BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), and BOOST_FIXTURE_TEST_CASE().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE, and PCB_TEXTBOX.
Definition at line 176 of file eda_shape.h.
References m_shape.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), Deserialize(), ellipseToPolygon(), lineEndingPolygons(), rotate(), roundedRectToPolygon(), SCH_SHAPE::SetArcOrLine(), SetArcOrSegment(), PCB_SHAPE::SetShape(), PCB_TEXTBOX::SetShape(), and GRAPHICS_IMPORTER::setupSplineOrLine().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 287 of file eda_shape.h.
References m_endsSwapped, m_hatchingDirty, and m_start.
Referenced by SCH_IO_LTSPICE_PARSER::AddAscArc(), SCH_IO_ALTIUM::AddLibTextBox(), SCH_IO_GEDA::addSymbolGraphic(), SCH_IO_ALTIUM::AddTextBox(), addTransformFeatures(), ARC_DRAW_BEHAVIOR::ApplyToShape(), BEZIER_DRAW_BEHAVIOR::ApplyToShape(), beginEdit(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::BuildKiCadPowerSymbol(), calcEdit(), SCH_EDIT_TABLE_TOOL::copyCell(), SCH_IO_GEDA::createFallbackSymbol(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::createShape(), SCH_IO_LTSPICE_PARSER::CreateSymArc(), Deserialize(), KI_ARC_EDIT::EditArcEndpointKeepCenter(), editArcEndpointKeepCenterAndRadius(), editArcEndpointKeepTangent(), KI_ARC_EDIT::EditArcMidKeepCenter(), CADSTAR_SCH_ARCHIVE_LOADER::getScaledLibPart(), HelperGeneratePowerPortGraphics(), HelperGeneratePowerPortGraphics(), lineEndingShape(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadArc(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadBezier(), CADSTAR_SCH_ARCHIVE_LOADER::loadLibrarySymbolShapeVertices(), SCH_IO_EAGLE::loadSymbolWire(), PCB_TEXTBOX::OnFootprintTransformed(), SCH_IO_ALTIUM::ParseArc(), SCH_IO_ALTIUM::ParseBezier(), SCH_IO_ALTIUM::ParseEllipse(), SCH_IO_ALTIUM::ParseEllipticalArc(), SCH_SHAPE::Plot(), SCH_TEXTBOX::Plot(), PCB_SHAPE::rebakeFromTransform(), PCB_TEXTBOX::Rotate(), SetArcOrSegment(), SetCenter(), SetCenterX(), SetCenterY(), PCB_SHAPE::SetStart(), SetStartX(), and SetStartY().
|
inlineinherited |
Definition at line 183 of file eda_shape.h.
References m_startEnding.
Referenced by clearLineEndings(), and lineEndingShape().
|
inlineinherited |
Definition at line 198 of file eda_shape.h.
References m_startEnding.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), and EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 208 of file eda_shape.h.
References m_startEnding.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 192 of file eda_shape.h.
References m_startEnding.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), and EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 200 of file eda_shape.h.
References m_startEnding.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), and EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineinherited |
Definition at line 301 of file eda_shape.h.
References m_start, SetStart(), and VECTOR2< T >::x.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC(), SCH_SHAPE::Normalize(), SetLeft(), PCB_TEXTBOX::SetLeft(), and PCB_TEXTBOX::SetRight().
|
inlineinherited |
Definition at line 294 of file eda_shape.h.
References m_start, SetStart(), and VECTOR2< T >::y.
Referenced by EDA_SHAPE_DESC::EDA_SHAPE_DESC(), SCH_SHAPE::Normalize(), PCB_TEXTBOX::SetBottom(), SetTop(), and PCB_TEXTBOX::SetTop().
|
inlinevirtualinherited |
Reimplemented in PCB_TEXTBOX.
Definition at line 367 of file eda_shape.h.
References SetStartY().
Referenced by BOOST_FIXTURE_TEST_CASE(), and BOOST_FIXTURE_TEST_CASE().
|
virtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 3837 of file eda_shape.cpp.
References m_hatchingDirty, and m_stroke.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), SCH_TEXTBOX::Deserialize(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), SCH_IO_EAGLE::loadSymbolRectangle(), and SCH_IO_ALTIUM::ParseEllipse().
|
inherited |
Definition at line 506 of file eda_shape.cpp.
References ARC, BEZIER, CIRCLE, ELLIPSE, ELLIPSE_ARC, m_shape, POLY, RECTANGLE, SEGMENT, and UNDEFINED.
Referenced by SCH_SHAPE::AddPoint(), BOARD_ADAPTER::addShape(), GRAPHICS_CLEANER::areEquivalent(), beginEdit(), calcEdit(), CheckLibSymbolGraphics(), continueEdit(), endEdit(), flip(), PCB_IO_KICAD_SEXPR::format(), PCB_IO_KICAD_SEXPR::format(), PCB_WRITER_V10::format(), PCB_WRITER_V10::format(), PCB_WRITER_V9::format(), PCB_WRITER_V9::format(), getBoundingBox(), getCenter(), PCB_SHAPE::GetConnectionPoints(), PCB_SHAPE::GetCorners(), SCH_SHAPE::GetItemDescription(), GetLength(), SCH_SHAPE::GetMenuImage(), GetRadius(), GetRectangleHeight(), GetRectangleWidth(), hitTest(), hitTest(), IsClockwiseArc(), IsClosed(), GRAPHICS_CLEANER::isNullShape(), libSaveSymbolDrawItem(), libSaveSymbolDrawItem(), makeEffectiveShapes(), SCH_POINT_EDITOR::makePointsAndBehavior(), move(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), rotate(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), SCH_IO_KICAD_SEXPR::saveShape(), SCH_WRITER_V10::saveShape(), SCH_WRITER_V9::saveShape(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveSymbolDrawItem(), scale(), SetCenter(), SetRectangle(), SetRectangleHeight(), SetRectangleWidth(), shapeNeedsUpdate(), TransformShapeToPolygon(), and UpdateHatching().
|
inherited |
Definition at line 1547 of file eda_shape.cpp.
References _, std::abs(), ARC, BEZIER, CIRCLE, ELLIPSE, ELLIPSE_ARC, GetArcAngle(), GetEllipseEndAngle(), GetEllipseMajorRadius(), GetEllipseMinorRadius(), GetEllipseRotation(), GetEllipseStartAngle(), GetEnd(), EDA_BASE_FRAME::GetFrameType(), getFriendlyName(), GetLength(), GetPolyShape(), GetRadius(), GetStart(), m_shape, m_stroke, EDA_UNIT_UTILS::UI::MessageTextFromValue(), UNITS_PROVIDER::MessageTextFromValue(), SHAPE_POLY_SET::Outline(), SHAPE_LINE_CHAIN::PointCount(), POLY, RADIANS_T, RECTANGLE, and SEGMENT.
Referenced by PCB_SHAPE::GetMsgPanelInfo(), and SCH_SHAPE::GetMsgPanelInfo().
|
inherited |
Shorten an arc body for line endings.
Definition at line 4310 of file eda_shape.cpp.
References std::abs(), ANGLE_0, EDA_ANGLE::AsRadians(), DEGREES_T, m_endEnding, m_startEnding, and RAD2DEG().
Referenced by BOARD_ADAPTER::addShape(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), KIGFX::PCB_PAINTER::draw(), makeShortenedBodyShapes(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), and TransformWithLineEndingsToPolygon().
|
inherited |
Apply line-ending body shortening to copied/generated polyline points.
Line endings belong to the first open outline only. Other outlines are returned unchanged.
Definition at line 4517 of file eda_shape.cpp.
References IsClosed(), and ShortenPolyForEndings().
Referenced by GetShortenedBodyPolyPoints(), and SCH_SHAPE::Plot().
|
inherited |
Return the cubic Bezier curve shortened for line endings.
The shortening distance is mapped onto the source curve using a fixed-cost numerical arc-length estimator, then the curve is subdivided with de Casteljau so curve-capable backends can keep a Bezier.
Definition at line 4423 of file eda_shape.cpp.
References BEZIER, bezierLength(), findBezierTAtLength(), GetEndEnding(), LINE_ENDING::GetShortenDepth(), GetStartEnding(), IsClosed(), m_bezierC1, m_bezierC2, m_end, m_shape, and m_start.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), KIGFX::PCB_PAINTER::draw(), GetEndingTangents(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), and ShortenedBezierPolyline().
|
inherited |
Return the flattened Bezier polyline after line-ending shortening.
Definition at line 4454 of file eda_shape.cpp.
References getMaxError(), BEZIER_POLY::GetPoly(), and ShortenedBezierCurve().
Referenced by BOARD_ADAPTER::addShape(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), MakeEffectiveShapesForStroking(), makeShortenedBodyShapes(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), and TransformWithLineEndingsToPolygon().
|
inherited |
Definition at line 4473 of file eda_shape.cpp.
References m_endEnding, and m_startEnding.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and ShortenBodyPolyPoints().
|
staticinherited |
Shorten a segment body for line endings.
Static so SCH_LINE (which doesn't inherit EDA_SHAPE) can use it too.
Definition at line 4270 of file eda_shape.cpp.
References delta, LINE_ENDING::GetShortenDepth(), KiROUND(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by BOARD_ADAPTER::addShape(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), makeShortenedBodyShapes(), SCH_LINE::Plot(), SCH_SHAPE::Plot(), BRDITEMS_PLOTTER::PlotShape(), and TransformWithLineEndingsToPolygon().
|
inherited |
Definition at line 477 of file eda_shape.cpp.
References _, ARC, BEZIER, CIRCLE, ELLIPSE, ELLIPSE_ARC, IsProxyItem(), m_shape, POLY, RECTANGLE, and SEGMENT.
|
inherited |
Definition at line 3968 of file eda_shape.cpp.
References SHAPE_POLY_SET::CVertex(), EDA_SHAPE(), STROKE_PARAMS::GetLineStyle(), GetPolyShape(), GetShape(), STROKE_PARAMS::GetWidth(), alg::longest_common_subset(), m_arcCenter, m_bezierC1, m_bezierC2, m_bezierPoints, m_end, m_endEnding, m_fill, m_fillColor, m_start, m_startEnding, m_stroke, and SHAPE_POLY_SET::TotalVertices().
Referenced by PCB_SHAPE::Similarity(), and SCH_SHAPE::Similarity().
|
inherited |
Definition at line 3521 of file eda_shape.cpp.
References EDA_SHAPE(), image, m_arcCenter, m_bezierC1, m_bezierC2, m_bezierPoints, m_cornerRadius, m_editState, m_ellipse, m_end, m_endEnding, m_endsSwapped, m_fill, m_fillColor, m_hatchingDirty, m_poly, m_shape, m_start, m_startEnding, m_stroke, and SWAPITEM.
Referenced by PCB_SHAPE::swapData(), and SCH_SHAPE::swapData().
|
inherited |
Append only the line-ending geometry associated with this shape to a polygon set.
Definition at line 2832 of file eda_shape.cpp.
References addLineEndingPolygon(), GetEndingTangents(), GetLineEndingEndpoints(), hasLineEnding(), m_endEnding, and m_startEnding.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and TransformWithLineEndingsToPolygon().
|
inherited |
Convert the shape to a closed polygon.
Circles and arcs are approximated by segments.
| aBuffer | is a buffer to store the polygon. |
| aClearance | is the clearance around the pad. |
| aError | is the maximum deviation from a true arc. |
| aErrorLoc | whether any approximation error should be placed inside or outside |
| ignoreLineWidth | is used for edge cut items where the line width is only for visualization |
| includeFill |
Definition at line 3623 of file eda_shape.cpp.
References SEG::A, std::abs(), SHAPE_POLY_SET::AddOutline(), ANGLE_0, SHAPE_POLY_SET::Append(), ARC, SHAPE_LINE_CHAIN::Arc(), SHAPE_LINE_CHAIN::ArcIndex(), SEG::B, BEZIER, buildShapeEllipse(), chain, CIRCLE, SHAPE_ELLIPSE::ConvertToPolyline(), ELLIPSE, ELLIPSE_ARC, ERROR_OUTSIDE, GetArcMid(), SHAPE_ARC::GetArcMid(), GetBezierC1(), GetBezierC2(), getBoundingBox(), BOX2< Vec >::GetCenter(), getCenter(), GetCornerRadius(), GetEnd(), GetHatching(), SHAPE_ARC::GetP0(), SHAPE_ARC::GetP1(), SHAPE_LINE_CHAIN::GetPoint(), SHAPE_LINE_CHAIN::GetPointCount(), BEZIER_POLY::GetPoly(), GetPolyShape(), GetRadius(), GetRectangleHeight(), GetRectangleWidth(), GetRectCorners(), SHAPE_LINE_CHAIN::GetSegment(), GetStart(), GetWidth(), SHAPE_POLY_SET::Inflate(), SHAPE_LINE_CHAIN::IsArcSegment(), IsHatchedFill(), IsPolyShapeValid(), IsProxyItem(), IsSolidFill(), m_shape, SHAPE_POLY_SET::NewOutline(), SHAPE_POLY_SET::Outline(), SHAPE_POLY_SET::OutlineCount(), POLY, RECTANGLE, ROUND_ALL_CORNERS, SEGMENT, SHAPE_LINE_CHAIN::SegmentCount(), SHAPE_LINE_CHAIN::SetClosed(), SHAPE_T_asString(), TransformArcToPolygon(), TransformCircleToPolygon(), TransformOvalToPolygon(), TransformRingToPolygon(), TransformRoundChamferedRectToPolygon(), ROUNDRECT::TransformToPolygon(), and UNIMPLEMENTED_FOR.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), OrcadHatchLines(), PCB_SHAPE::TransformShapeToPolygon(), PCB_SHAPE::TransformShapeToPolySet(), and TransformWithLineEndingsToPolygon().
|
inherited |
Convert the shape body shortened for line endings plus line-ending geometry to polygons.
Definition at line 2854 of file eda_shape.cpp.
References ARC, BEZIER, buildShapeEllipse(), CalcArcAngles(), chain, SHAPE_ELLIPSE::ConvertToPolyline(), SHAPE_POLY_SET::COutline(), ELLIPSE, ELLIPSE_ARC, end, SHAPE_ARC::GetArcMid(), GetEffectiveWidth(), GetEnd(), getMaxError(), SHAPE_ARC::GetP0(), SHAPE_ARC::GetP1(), GetPolyShape(), GetRadius(), GetShortenedBodyPolyPoints(), GetStart(), GetWidth(), SHAPE_LINE_CHAIN::IsClosed(), IsHatchedFill(), IsPolyShapeValid(), IsProxyItem(), IsSolidFill(), m_arcCenter, m_endEnding, m_shape, m_startEnding, SHAPE_POLY_SET::OutlineCount(), SHAPE_LINE_CHAIN::PointCount(), POLY, RotatePoint(), SEGMENT, ShortenArcForEndings(), ShortenedBezierPolyline(), ShortenSegmentForEndings(), TransformArcToPolygon(), TransformLineEndingsToPolygon(), TransformOvalToPolygon(), and TransformShapeToPolygon().
Referenced by addItemPolysWithEndings(), addItemPolysWithEndings(), addItemPolysWithEndings(), ZONE_FILLER::addKnockout(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), EXPORTER_STEP::buildGraphic3DShape(), and lowerLineEndingShape().
|
virtualinherited |
Reimplemented in PCB_SHAPE, and SCH_SHAPE.
Definition at line 781 of file eda_shape.cpp.
References SHAPE_POLY_SET::AddOutline(), ANGLE_45, SHAPE_LINE_CHAIN::Append(), ARC, SHAPE_POLY_SET::BBox(), BEZIER, SHAPE_POLY_SET::BooleanSubtract(), buildShapeEllipse(), chain, CIRCLE, SHAPE_POLY_SET::ClearArcs(), SHAPE_POLY_SET::CloneDropTriangulation(), SHAPE_ELLIPSE::ConvertToPolyline(), CROSS_HATCH, ELLIPSE, ELLIPSE_ARC, ERROR_INSIDE, SHAPE_POLY_SET::Fracture(), SHAPE_POLY_SET::GenerateHatchLines(), BOX2< Vec >::GetBottom(), getCenter(), GetCornerRadius(), GetFillMode(), getHatchingKnockouts(), GetHatchLineSpacing(), GetHatchLineWidth(), BOX2< Vec >::GetHeight(), getMaxError(), GetPolyShape(), getPosition(), GetRadius(), GetRectangleHeight(), GetRectangleWidth(), BOX2< Vec >::GetRight(), BOX2< Vec >::GetWidth(), BOX2< Vec >::GetX(), BOX2< Vec >::GetY(), HATCH, hatching(), hatchLines(), SHAPE_LINE_CHAIN::IsClosed(), SHAPE_POLY_SET::IsEmpty(), isMoving(), m_hatchingDirty, m_shape, SHAPE_LINE_CHAIN::Move(), SHAPE_POLY_SET::Outline(), SHAPE_POLY_SET::OutlineCount(), SHAPE_LINE_CHAIN::PointCount(), POLY, RECTANGLE, SHAPE_POLY_SET::RemoveAllContours(), REVERSE_HATCH, SHAPE_POLY_SET::Rotate(), SEGMENT, SHAPE_LINE_CHAIN::SetClosed(), SHAPE_T_asString(), TransformCircleToPolygon(), TransformOvalToPolygon(), ROUNDRECT::TransformToPolygon(), UNIMPLEMENTED_FOR, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by GetHatching(), GetHatchLines(), PCB_SHAPE::UpdateHatching(), and SCH_SHAPE::UpdateHatching().
|
protectedinherited |
Definition at line 770 of file eda_shape.h.
Referenced by calcEdit(), computeArcBBox(), Deserialize(), PCB_SHAPE::Deserialize(), EDA_SHAPE(), flip(), GetArcMid(), getCenter(), GetRadius(), makeEffectiveShapes(), makeShortenedBodyShapes(), move(), operator=(), operator==(), recalcEllipseArcEndpoints(), rotate(), scale(), SetArcAngleAndEnd(), SetArcGeometry(), SetCenter(), Similarity(), SwapShape(), and TransformWithLineEndingsToPolygon().
|
protectedinherited |
Definition at line 771 of file eda_shape.h.
Referenced by Deserialize(), PCB_SHAPE::Deserialize(), EDA_SHAPE(), GetArcMid(), move(), operator=(), rotate(), SetArcGeometry(), and SetCachedArcData().
|
protectedinherited |
Definition at line 773 of file eda_shape.h.
Referenced by buildBezierToSegmentsPointsList(), Compare(), Deserialize(), PCB_SHAPE::Deserialize(), EDA_SHAPE(), flip(), GetBezierC1(), GetEndingTangents(), hitTest(), hitTest(), move(), operator=(), operator==(), rotate(), scale(), SetBezierC1(), ShortenedBezierCurve(), Similarity(), and SwapShape().
|
protectedinherited |
Definition at line 774 of file eda_shape.h.
Referenced by buildBezierToSegmentsPointsList(), Compare(), Deserialize(), PCB_SHAPE::Deserialize(), EDA_SHAPE(), flip(), GetBezierC2(), GetEndingTangents(), hitTest(), hitTest(), move(), operator=(), operator==(), rotate(), scale(), SetBezierC2(), ShortenedBezierCurve(), Similarity(), and SwapShape().
|
protectedinherited |
Definition at line 776 of file eda_shape.h.
Referenced by Compare(), EDA_SHAPE(), GetBezierPoints(), getBoundingBox(), SCH_SHAPE::GetItemDescription(), GetLength(), hitTest(), hitTest(), IsClosed(), move(), operator=(), operator==(), RebuildBezierToSegmentsPointsList(), rotate(), Similarity(), and SwapShape().
|
protectedinherited |
Definition at line 756 of file eda_shape.h.
Referenced by GetEndEnding(), and GetStartEnding().
|
protectedinherited |
Definition at line 765 of file eda_shape.h.
Referenced by Compare(), EDA_SHAPE(), EDA_SHAPE(), EDA_SHAPE(), GetCornerRadius(), hitTest(), hitTest(), makeEffectiveShapes(), operator=(), rotate(), SetCornerRadius(), and SwapShape().
|
protectedinherited |
Definition at line 780 of file eda_shape.h.
Referenced by beginEdit(), calcEdit(), continueEdit(), Deserialize(), PCB_SHAPE::Deserialize(), EDA_SHAPE(), EDA_SHAPE(), EDA_SHAPE(), endEdit(), operator=(), recalcEllipseArcEndpoints(), setEditState(), and SwapShape().
|
protectedinherited |
Definition at line 777 of file eda_shape.h.
Referenced by buildShapeEllipse(), calcEdit(), Compare(), EDA_SHAPE(), flip(), getCenter(), GetEllipse(), GetEllipseCenter(), GetEllipseEndAngle(), GetEllipseMajorRadius(), GetEllipseMinorRadius(), GetEllipseRotation(), GetEllipseStartAngle(), GetEndingTangents(), move(), operator=(), operator==(), recalcEllipseArcEndpoints(), rotate(), scale(), SetCenter(), SetEllipseCenter(), SetEllipseEndAngle(), SetEllipseMajorRadius(), SetEllipseMinorRadius(), SetEllipseRotation(), SetEllipseStartAngle(), and SwapShape().
|
protectedinherited |
Definition at line 768 of file eda_shape.h.
Referenced by buildBezierToSegmentsPointsList(), calcEdit(), Compare(), computeArcBBox(), Deserialize(), PCB_SHAPE::Deserialize(), EDA_SHAPE(), flip(), GetArcMid(), getCenter(), PCB_TEXTBOX::GetCornersInSequence(), SCH_TEXTBOX::GetDrawPos(), GetEnd(), GetEndingTangents(), GetEndX(), GetEndY(), SCH_SHAPE::GetItemDescription(), GetRadius(), hitTest(), hitTest(), IsClockwiseArc(), makeEffectiveShapes(), move(), operator=(), operator==(), SCH_SHAPE::Plot(), SCH_TEXTBOX::Plot(), recalcEllipseArcEndpoints(), PCB_TEXTBOX::Rotate(), rotate(), scale(), SetArcAngleAndEnd(), SetArcGeometry(), SetCenter(), SetCenterX(), SetCenterY(), SetEnd(), SetEndX(), SetEndY(), ShortenedBezierCurve(), Similarity(), SwapShape(), and PCB_TEXTBOX::syncLibCoords().
|
protectedinherited |
Definition at line 755 of file eda_shape.h.
Referenced by Deserialize(), EDA_SHAPE(), EDA_SHAPE(), EDA_SHAPE(), GetEndEnding(), GetEndEndingLength(), GetEndEndingStrokeWidth(), GetEndEndingStyle(), GetEndEndingWidth(), GetEndingTangents(), GetLineEndingsBoundingBox(), hitTest(), hitTest(), hitTest(), MakeEffectiveShapesForStroking(), MakeLineEndingEffectiveShapes(), makeShortenedBodyShapes(), operator=(), operator==(), Serialize(), SetEndEnding(), SetEndEndingLength(), SetEndEndingStrokeWidth(), SetEndEndingStyle(), SetEndEndingWidth(), ShortenArcForEndings(), ShortenPolyForEndings(), Similarity(), SwapShape(), TransformLineEndingsToPolygon(), and TransformWithLineEndingsToPolygon().
|
protectedinherited |
Definition at line 751 of file eda_shape.h.
Referenced by Deserialize(), PCB_SHAPE::Deserialize(), EDA_SHAPE(), EDA_SHAPE(), EDA_SHAPE(), EndsSwapped(), operator=(), SetArcAngleAndEnd(), SetArcGeometry(), SetEnd(), SetStart(), and SwapShape().
|
protectedinherited |
Definition at line 757 of file eda_shape.h.
Referenced by Compare(), EDA_SHAPE(), EDA_SHAPE(), EDA_SHAPE(), GetFillMode(), GetFillModeProp(), operator=(), operator==(), SCH_RULE_AREA::Plot(), SCH_SHAPE::Plot(), SCH_SHAPE::SetFilled(), setFilled(), SCH_SHAPE::setFilled(), SetFillMode(), Similarity(), SwapShape(), and SCH_SHAPE::ViewGetLayers().
|
protectedinherited |
Definition at line 758 of file eda_shape.h.
Referenced by Deserialize(), EDA_SHAPE(), EDA_SHAPE(), GetFillColor(), operator=(), operator==(), Serialize(), SetFillColor(), Similarity(), and SwapShape().
|
mutableprotectedinherited |
Definition at line 760 of file eda_shape.h.
Referenced by GetHatching(), GetHatchLines(), hatching(), hatchLines(), move(), and operator=().
|
mutableprotectedinherited |
Definition at line 761 of file eda_shape.h.
Referenced by EDA_SHAPE(), EDA_SHAPE(), EDA_SHAPE(), flip(), move(), operator=(), rotate(), scale(), SetCenter(), SetCenterX(), SetCenterY(), SetCornerRadius(), SetEllipseCenter(), SetEllipseEndAngle(), SetEllipseMajorRadius(), SetEllipseMinorRadius(), SetEllipseRotation(), SetEllipseStartAngle(), SetEnd(), SetFillMode(), SetHatchingDirty(), PCB_SHAPE::SetLibStrokeWidth(), SetPolyPoints(), SetPolyShape(), SetRadius(), SetStart(), SetWidth(), PCB_SHAPE::SetWidth(), SwapShape(), UpdateHatching(), and PCB_SHAPE::UpdateHatching().
|
mutableprotectedinherited |
Definition at line 778 of file eda_shape.h.
Referenced by EDA_SHAPE(), GetPolyShape(), GetPolyShape(), operator=(), and SwapShape().
|
protectedinherited |
Definition at line 781 of file eda_shape.h.
Referenced by Deserialize(), PCB_SHAPE::Deserialize(), EDA_SHAPE(), EDA_SHAPE(), EDA_SHAPE(), IsProxyItem(), PCB_SHAPE::IsProxyItem(), operator=(), SetIsProxyItem(), and PCB_SHAPE::SetIsProxyItem().
|
protectedinherited |
Definition at line 763 of file eda_shape.h.
Referenced by EDA_SHAPE(), EDA_SHAPE(), EDA_SHAPE(), operator=(), and SetRectangleHeight().
|
protectedinherited |
Definition at line 764 of file eda_shape.h.
Referenced by EDA_SHAPE(), EDA_SHAPE(), EDA_SHAPE(), operator=(), and SetRectangleWidth().
|
protectedinherited |
Definition at line 752 of file eda_shape.h.
Referenced by buildShapeEllipse(), Compare(), EDA_SHAPE(), EDA_SHAPE(), PCB_SHAPE::Flip(), flip(), getBoundingBox(), getCenter(), PCB_SHAPE::GetConnectionPoints(), GetCornersInSequence(), PCB_TEXTBOX::GetCornersInSequence(), GetEndingTangents(), PCB_SHAPE::GetFocusPosition(), getFriendlyName(), GetLength(), GetLineEndingEndpoints(), getPosition(), GetRadius(), GetRectangleHeight(), GetRectangleWidth(), GetShape(), hitTest(), hitTest(), IsClockwiseArc(), IsClosed(), PCB_SHAPE::IsType(), SCH_RULE_AREA::MakeEffectiveShapes(), makeEffectiveShapes(), MakeEffectiveShapesForStroking(), makeShortenedBodyShapes(), move(), PCB_SHAPE::Normalize(), PCB_SHAPE::NormalizeForCompare(), PCB_TEXTBOX::OnFootprintTransformed(), operator=(), operator==(), PCB_SHAPE::rebakeFromTransform(), RebuildBezierToSegmentsPointsList(), recalcEllipseArcEndpoints(), rotate(), scale(), SetCenter(), SetCornerRadius(), SetRectangle(), SetRectangleHeight(), SetRectangleWidth(), SetShape(), SHAPE_T_asString(), ShapeGetMsgPanelInfo(), ShortenedBezierCurve(), ShowShape(), SwapShape(), PCB_SHAPE::syncLibCoords(), TransformShapeToPolygon(), TransformWithLineEndingsToPolygon(), and UpdateHatching().
|
protectedinherited |
Definition at line 767 of file eda_shape.h.
Referenced by buildBezierToSegmentsPointsList(), calcEdit(), Compare(), computeArcBBox(), Deserialize(), PCB_SHAPE::Deserialize(), EDA_SHAPE(), flip(), GetArcMid(), getCenter(), PCB_TEXTBOX::GetCornersInSequence(), SCH_TEXTBOX::GetDrawPos(), GetEndingTangents(), SCH_SHAPE::GetItemDescription(), getPosition(), GetRadius(), GetStart(), GetStartX(), GetStartY(), hitTest(), hitTest(), IsClockwiseArc(), makeEffectiveShapes(), move(), operator=(), operator==(), SCH_SHAPE::Plot(), SCH_TEXTBOX::Plot(), recalcEllipseArcEndpoints(), PCB_TEXTBOX::Rotate(), rotate(), scale(), SetArcAngleAndEnd(), SetArcGeometry(), SetCenter(), SetCenterX(), SetCenterY(), SetRadius(), SetStart(), SetStartX(), SetStartY(), ShortenedBezierCurve(), Similarity(), SwapShape(), and PCB_TEXTBOX::syncLibCoords().
|
protectedinherited |
Definition at line 754 of file eda_shape.h.
Referenced by Deserialize(), EDA_SHAPE(), EDA_SHAPE(), EDA_SHAPE(), GetEndingTangents(), GetLineEndingsBoundingBox(), GetStartEnding(), GetStartEndingLength(), GetStartEndingStrokeWidth(), GetStartEndingStyle(), GetStartEndingWidth(), hitTest(), hitTest(), hitTest(), MakeEffectiveShapesForStroking(), MakeLineEndingEffectiveShapes(), makeShortenedBodyShapes(), operator=(), operator==(), Serialize(), SetStartEnding(), SetStartEndingLength(), SetStartEndingStrokeWidth(), SetStartEndingStyle(), SetStartEndingWidth(), ShortenArcForEndings(), ShortenPolyForEndings(), Similarity(), SwapShape(), TransformLineEndingsToPolygon(), and TransformWithLineEndingsToPolygon().
|
protectedinherited |
Definition at line 753 of file eda_shape.h.
Referenced by Compare(), Deserialize(), SCH_TEXTBOX::Deserialize(), EDA_SHAPE(), EDA_SHAPE(), EDA_SHAPE(), PCB_TEXTBOX::GetBorderWidth(), SCH_SHAPE::GetEffectiveLineStyle(), GetLineColor(), GetLineStyle(), PCB_TEXTBOX::GetMsgPanelInfo(), SCH_RULE_AREA::GetMsgPanelInfo(), SCH_TEXTBOX::GetMsgPanelInfo(), PCB_SHAPE::GetStroke(), SCH_SHAPE::GetStroke(), GetWidth(), operator=(), operator==(), Serialize(), PCB_TEXTBOX::SetBorderWidth(), PCB_SHAPE::SetLibStrokeWidth(), SetLineColor(), SetLineStyle(), PCB_SHAPE::SetStroke(), SCH_SHAPE::SetStroke(), SetWidth(), PCB_SHAPE::SetWidth(), ShapeGetMsgPanelInfo(), Similarity(), PCB_SHAPE::StyleFromSettings(), and SwapShape().