private ArgbColor method_13(DrawContext context, DxfLayer layer) { int index = this.list_0[0].Elements.Count - 1; DxfMLineStyle style = this.Style; return(index < 0 || index >= style.Elements.Count ? context.GetPlotColor((DxfEntity)this) : DxfEntity.GetColor(context.Config.IndexedColors, style.Elements[index].Color, context.ByBlockColor, context.ByBlockDxfColor, layer)); }
public void WriteMLineStyleTest() { var mlineStyle = new DxfMLineStyle(); mlineStyle.StyleName = "<name>"; mlineStyle.Description = "<description>"; mlineStyle.FillColor = DxfColor.FromRawValue(1); mlineStyle.StartAngle = 99.9; mlineStyle.EndAngle = 100.0; mlineStyle.Elements.Add(new DxfMLineStyle.DxfMLineStyleElement() { Offset = 3.0, Color = DxfColor.FromRawValue(3), LineType = "tres" }); mlineStyle.Elements.Add(new DxfMLineStyle.DxfMLineStyleElement() { Offset = 4.0, Color = DxfColor.FromRawValue(4), LineType = "quatro" }); var file = new DxfFile(); file.Header.Version = DxfAcadVersion.R14; file.Objects.Add(mlineStyle); VerifyFileContains(file, @" 100 AcDbMlineStyle 2 <name> 70 0 3 <description> 62 1 51 99.9 52 100.0 71 2 49 3.0 62 3 6 tres 49 4.0 62 4 6 quatro "); }
public override void ResolveReferences(Class374 modelBuilder) { base.ResolveReferences(modelBuilder); DxfMLineStyle handledObject = (DxfMLineStyle)this.HandledObject; if (this.list_1 == null) { return; } foreach (Class730 class730 in this.list_1) { class730.ResolveReferences(modelBuilder, handledObject); } }
public override void ResolveReferences(Class374 modelBuilder) { base.ResolveReferences(modelBuilder); DxfMLine entity = (DxfMLine)this.Entity; if (this.ulong_6 == 0UL) { return; } DxfMLineStyle dxfMlineStyle = modelBuilder.method_4 <DxfMLineStyle>(this.ulong_6); if (dxfMlineStyle == null) { return; } entity.Style = dxfMlineStyle; }
public override void CopyFrom(DxfHandledObject from, CloneContext cloneContext) { base.CopyFrom(from, cloneContext); DxfMLine dxfMline = (DxfMLine)from; if (dxfMline.Style != null) { if (cloneContext.SourceModel == cloneContext.TargetModel) { this.Style = dxfMline.Style; } else if ((this.Style = cloneContext.TargetModel.MLineStyles.Find(dxfMline.Style.Name)) == null) { switch (cloneContext.ReferenceResolutionType) { case ReferenceResolutionType.IgnoreMissing: this.Style = cloneContext.TargetModel.DefaultMLineStyle; break; case ReferenceResolutionType.CloneMissing: DxfMLineStyle dxfMlineStyle = (DxfMLineStyle)dxfMline.Style.Clone(cloneContext); if (!cloneContext.CloneExact) { cloneContext.TargetModel.MLineStyles.Add(dxfMlineStyle); } this.Style = dxfMlineStyle; break; case ReferenceResolutionType.FailOnMissing: throw new DxfException(string.Format("Could not resolve reference to mline style with name {0}.", (object)dxfMline.Style.Name)); } } } this.double_1 = dxfMline.double_1; this.mlineAlignment_0 = dxfMline.mlineAlignment_0; this.mlineFlags_0 = dxfMline.mlineFlags_0; this.point3D_0 = dxfMline.point3D_0; this.vector3D_0 = dxfMline.vector3D_0; foreach (DxfMLine.Segment segment in dxfMline.list_0) { this.list_0.Add(segment.Clone(cloneContext)); } }
public void ResolveReferences(Class374 modelBuilder, DxfMLineStyle mlineStyle) { DxfLineType lineType1 = (DxfLineType)null; if (this.nullable_1.HasValue) { lineType1 = modelBuilder.method_4 <DxfLineType>(this.nullable_1.Value); } else if (this.nullable_0.HasValue) { if (this.nullable_0.Value == (int)short.MaxValue) { lineType1 = modelBuilder.Model.ByLayerLineType; } else if (this.nullable_0.Value == 32766) { lineType1 = modelBuilder.Model.ByBlockLineType; } else { int num = -1; foreach (DxfLineType lineType2 in (KeyedDxfHandledObjectCollection <string, DxfLineType>)modelBuilder.Model.LineTypes) { if (lineType2 != modelBuilder.Model.ByLayerLineType && lineType2 != modelBuilder.Model.ByBlockLineType) { ++num; } if (num == this.nullable_0.Value) { lineType1 = lineType2; break; } } } } else { lineType1 = modelBuilder.Model.ByLayerLineType; } mlineStyle.Elements.Add(new DxfMLineStyle.Element(this.double_0, this.color_0, lineType1)); }
public void Visit(DxfMLineStyle mlineStyle) { }
public override void DrawInternal( DrawContext.Wireframe context, IWireframeGraphicsFactory2 graphicsFactory) { if (this.list_0.Count == 0) { return; } DxfLayer layer = this.GetLayer((DrawContext)context); int minElementCount = this.method_15(); DxfMLineStyle style = this.Style; for (int elementIndex = 0; elementIndex < style.Elements.Count; ++elementIndex) { DxfMLineStyle.Element element = style.Elements[elementIndex]; IList <Polyline4D> polylines4D; IList <IShape4D> shapes; this.GetPolylines4D((DrawContext)context, elementIndex, minElementCount, element, context.GetTransformer(), out polylines4D, out shapes); ArgbColor color = DxfEntity.GetColor(context.Config.IndexedColors, element.Color, context.ByBlockColor, context.ByBlockDxfColor, layer); if (polylines4D.Count > 0) { foreach (Polyline4D polyline4D in (IEnumerable <Polyline4D>)polylines4D) { if (polyline4D.Count <= 2) { polyline4D.Closed = false; } } Class940.smethod_3((DxfEntity)this, context, graphicsFactory, color, false, false, true, polylines4D); } if (shapes != null) { Class940.smethod_23((IPathDrawer) new Class396((DxfEntity)this, context, graphicsFactory), (IEnumerable <IShape4D>)shapes, element.Color, context.GetLineWeight((DxfEntity)this)); } } IList <Polyline4D> polylines1 = this.method_14((DrawContext)context, context.GetTransformer()); if (polylines1.Count > 0) { foreach (Polyline4D polyline4D in (IEnumerable <Polyline4D>)polylines1) { if (polyline4D.Count <= 2) { polyline4D.Closed = false; } } ArgbColor color = this.method_13((DrawContext)context, layer); Class940.smethod_3((DxfEntity)this, context, graphicsFactory, color, false, false, true, polylines1); } if (!style.IsFillOn) { return; } IList <Polyline4D> polylines2 = this.method_16(context.GetTransformer()); if (polylines2 == null || polylines2.Count <= 0) { return; } Class940.smethod_2((DxfEntity)this, context, graphicsFactory, DxfEntity.GetColor(context.Config.IndexedColors, style.FillColor, context.ByBlockColor, context.ByBlockDxfColor, this.GetLayer((DrawContext)context)), false, true, false, polylines2); }
public void Visit(DxfMLineStyle mlineStyle) { this.bool_0 = true; }
public Class314(DxfMLineStyle mlineStyle) : base((DxfHandledObject)mlineStyle) { }