public static ArchitecturalLine CreateArchitecturalEntity(string _name, Layer _layer, List <Point3D> _coords0, List <Point3D> _coords1, List <int> _connected, List <string> _text, SharpDX.Matrix _textTransform) { ArchitecturalLine aLine; int nrTextLines = _text.Count; if (nrTextLines > 0) { aLine = new ArchitecturalText(_name, _layer, _coords0, _coords1, _connected, _text, _textTransform); } else { aLine = new ArchitecturalLine(_name, _layer, _coords0, _coords1, _connected); } return(aLine); }
public ArchitecturalText(ArchitecturalText _original) : base("Copy of " + _original.EntityName, _original.EntityLayer, _original.Coords0, _original.Coords1, _original.Connected) { // entity (w/o ID, Name, IsValid, IsSelected, LineThicknessGUI) this.EntityColor = _original.EntityColor; this.Visibility = _original.Visibility; this.ContainedEntities = _original.ContainedEntities; this.ShowZones = _original.ShowZones; this.ShowCtrlPoints = _original.ShowCtrlPoints; this.IsExpanded = _original.IsExpanded; // geometric entity this.HasGeometry = true; this.ColorByLayer = _original.ColorByLayer; // architecural line this.HasGeometryType = EnityGeometryType.LINE; base.ValidateGeometry(); this.LineThickness = _original.LineThickness; // text this.Text = new List <string>(_original.Text); this.TextTransform = _original.TextTransform; }