public Arc(netDxf.Entities.Arc dxfArc) : this((Point) dxfArc.Center , dxfArc.StartAngle , dxfArc.EndAngle , dxfArc.Radius) { }
public LineSegment(netDxf.Entities.Line dxfLine) { this.Origin = (Point) dxfLine.StartPoint; this.EndPt = (Point)dxfLine.EndPoint; this.BoundingBox = new BoundingBox(this.Origin); this.BoundingBox.expandByPoint(this.EndPt); }
public Text(netDxf.Entities.MText dxfMTxt) : this(dxfMTxt.Value , (Point) dxfMTxt.Position , dxfMTxt.Height) { this.Rotation = dxfMTxt.Rotation; }
void ReadArc(netDxf.Entities.Arc arc, double x, double y) { // TODO : var point0 = CreateHiddenPoint(arc.Center.X + x, arc.Center.Y + y); var aPoint1 = CreateHiddenPoint(point0.X + arc.Radius * System.Math.Cos(System.Math.PI / 180 * arc.StartAngle), point0.Y + arc.Radius * System.Math.Sin(System.Math.PI / 180 * arc.StartAngle)); var point1 = compareFreePoints(this.drawing.Figures, aPoint1); if (point1 == null) { point1 = aPoint1; this.drawing.Figures.Add(point1); } var aPoint2 = CreateHiddenPoint(point0.X + arc.Radius * System.Math.Cos(System.Math.PI / 180 * arc.EndAngle), point0.Y + arc.Radius * System.Math.Sin(System.Math.PI / 180 * arc.EndAngle)); var point2 = compareFreePoints(this.drawing.Figures, aPoint2); if (point2 == null) { point2 = aPoint2; this.drawing.Figures.Add(point2); } var figure = Factory.CreateArc(drawing, new[] { point0, point1, point2 }); Actions.Add(drawing, figure); }
void ReadInsert(netDxf.Entities.Insert insert) { List<netDxf.Entities.IEntityObject> entities = insert.Block.Entities; //netDxf.Collections.EntityCollection entities = insert.Block.Entities; netDxf.Entities.IEntityObject entity = null; //netDxf.Entities.EntityObject entity = null; for (int index = 1; index < entities.Count; index++) { entity = entities[index]; if (entity is Line) ReadLine((Line)entity, insert.InsertionPoint.X, insert.InsertionPoint.Y); //ReadLine((Line)entity, insert.Position.X, insert.Position.Y); else if (entity is netDxf.Entities.Arc) ReadArc((netDxf.Entities.Arc)entity, insert.InsertionPoint.X, insert.InsertionPoint.Y); //ReadArc((netDxf.Entities.Arc)entity, insert.Position.X, insert.Position.Y); else if (entity is netDxf.Entities.Circle) ReadCircle((netDxf.Entities.Circle)entity, insert.InsertionPoint.X, insert.InsertionPoint.Y); //ReadCircle((netDxf.Entities.Circle)entity, insert.Position.X, insert.Position.Y); else if (entity is netDxf.Entities.Polyline) //IPolyline) { netDxf.Entities.Polyline polyline = CastPolyline((netDxf.Entities.Polyline)entity); //IPolyline)entity); if (polyline != null) { ReadPolyline(polyline.Vertexes, polyline.IsClosed, 0, 0); } } } }
void ReadCircle(netDxf.Entities.Circle circle, double x, double y) { var figures = new List<IFigure>(); figures.Add(CreateHiddenPoint(circle.Center.X + x, circle.Center.Y + y)); figures.Add(CreateHiddenPoint(circle.Center.X + x + circle.Radius, circle.Center.Y + y)); this.drawing.Add(figures); var figure = Factory.CreateCircleByRadius(drawing, figures); Actions.Add(drawing, figure); }
short DxfLineType2PicGrp(netDxf.Tables.LineType lineType) { if (_lineType2GrpDictionary.ContainsKey(lineType)) return _lineType2GrpDictionary[lineType]; else return 0; }
public PicGraphics.LT DxfLineType2PicLT(netDxf.Tables.LineType lineType) { if (_lineTypeDictionary.ContainsKey(lineType)) return _lineTypeDictionary[lineType]; else return PicGraphics.LT.LT_CUT; }
void ReadArc(netDxf.Entities.Arc arc, double x, double y) { // TODO : }