// Format writes data to formatter. func (p *Point) Format(f format.Formatter) { p.entity.Format(f) f.WriteString(100, "AcDbPoint") for i := 0; i < 3; i++ { f.WriteFloat((i+1)*10, p.Coord[i]) } }
// WriteTo writes OBJECTS data to formatter. func (os Objects) WriteTo(f format.Formatter) { f.WriteString(0, "SECTION") f.WriteString(2, "OBJECTS") for _, o := range os { o.Format(f) } f.WriteString(0, "ENDSEC") }
// WriteTo writes CLASSES data to formatter. func (cs Classes) WriteTo(f format.Formatter) { f.WriteString(0, "SECTION") f.WriteString(2, "CLASSES") for _, c := range cs { c.Format(f) } f.WriteString(0, "ENDSEC") }
// Format writes data to formatter. func (v *Vertex) Format(f format.Formatter) { v.entity.Format(f) f.WriteString(100, "AcDbVertex") f.WriteString(100, "AcDb3dPolylineVertex") for i := 0; i < 3; i++ { f.WriteFloat((i+1)*10, v.Coord[i]) } f.WriteInt(70, v.Flag) }
// Format writes data to formatter. func (l *Line) Format(f format.Formatter) { l.entity.Format(f) f.WriteString(100, "AcDbLine") for i := 0; i < 3; i++ { f.WriteFloat((i+1)*10, l.Start[i]) } for i := 0; i < 3; i++ { f.WriteFloat((i+1)*10+1, l.End[i]) } }
// Format writes data to formatter. func (c *Circle) Format(f format.Formatter) { c.entity.Format(f) f.WriteString(100, "AcDbCircle") for i := 0; i < 3; i++ { f.WriteFloat((i+1)*10, c.Center[i]) } f.WriteFloat(40, c.Radius) for i := 0; i < 3; i++ { f.WriteFloat(200+(i+1)*10, c.Direction[i]) } }
// Format writes data to formatter. func (f *ThreeDFace) Format(fm format.Formatter) { f.entity.Format(fm) fm.WriteString(100, "AcDbFace") for i := 0; i < 4; i++ { for j := 0; j < 3; j++ { fm.WriteFloat((j+1)*10+i, f.Points[i][j]) } } if f.Flag != 0 { fm.WriteInt(70, f.Flag) } }
// Format writes data to formatter. func (t *Text) Format(f format.Formatter) { t.entity.Format(f) f.WriteString(100, "AcDbText") for i := 0; i < 3; i++ { f.WriteFloat((i+1)*10, t.Coord1[i]) } f.WriteFloat(40, t.Height) f.WriteString(1, t.Value) f.WriteString(7, t.Style.Name()) if t.genflag != 0 { f.WriteInt(71, t.genflag) } if t.horizontalflag != 0 { f.WriteInt(72, t.horizontalflag) if t.verticalflag != 0 { for i := 0; i < 3; i++ { f.WriteFloat((i+1)*11, t.Coord1[i]) } } } f.WriteString(100, "AcDbText") if t.verticalflag != 0 { f.WriteInt(73, t.verticalflag) } }
// Format writes data to formatter. func (l *Layer) Format(f format.Formatter) { f.WriteString(0, "LAYER") f.WriteHex(5, l.handle) if l.owner != nil { f.WriteHex(330, l.owner.Handle()) } f.WriteString(100, "AcDbSymbolTableRecord") f.WriteString(100, "AcDbLayerTableRecord") f.WriteString(2, l.name) f.WriteInt(70, l.flag) f.WriteInt(62, int(l.Color)) f.WriteString(6, l.LineType.Name()) f.WriteInt(370, l.lineWidth) f.WriteHex(390, l.PlotStyle.Handle()) }
// Format writes data to formatter. func (l *LwPolyline) Format(f format.Formatter) { l.entity.Format(f) f.WriteString(100, "AcDbPolyline") f.WriteInt(90, l.Num) if l.Closed { f.WriteInt(70, 1) } else { f.WriteInt(70, 0) } for i := 0; i < l.Num; i++ { for j := 0; j < 2; j++ { f.WriteFloat((j+1)*10, l.Vertices[i][j]) } } }
// Format writes data to formatter. func (v *View) Format(f format.Formatter) { f.WriteString(0, "VIEW") f.WriteHex(5, v.handle) if v.owner != nil { f.WriteHex(330, v.owner.Handle()) } f.WriteString(100, "AcDbSymbolTableRecord") f.WriteString(100, "AcDbViewTableRecord") f.WriteString(2, v.name) }
// Format writes data to formatter. func (u *Ucs) Format(f format.Formatter) { f.WriteString(0, "UCS") f.WriteHex(5, u.handle) if u.owner != nil { f.WriteHex(330, u.owner.Handle()) } f.WriteString(100, "AcDbSymbolTableRecord") f.WriteString(100, "AcDbUCSTableRecord") f.WriteString(2, u.name) }
// Format writes data to formatter. func (t *Table) Format(f format.Formatter) { f.WriteString(0, "TABLE") f.WriteString(2, t.name) f.WriteHex(5, t.handle) f.WriteString(100, "AcDbSymbolTable") f.WriteInt(70, t.size) if t.name == "DIMSTYLE" { f.WriteString(100, "AcDbDimStyleTable") f.WriteInt(71, t.size) for i := 0; i < t.size; i++ { f.WriteHex(340, t.tables[i].Handle()) } } for i := 0; i < t.size; i++ { t.tables[i].Format(f) } f.WriteString(0, "ENDTAB") }
// Format writes data to formatter. func (d *DimStyle) Format(f format.Formatter) { f.WriteString(0, "DIMSTYLE") f.WriteHex(105, d.handle) if d.owner != nil { f.WriteHex(330, d.owner.Handle()) } f.WriteString(100, "AcDbSymbolTableRecord") f.WriteString(100, "AcDbDimStyleTableRecord") f.WriteString(2, d.name) f.WriteInt(70, 0) }
// Format writes data to formatter. func (g *Group) Format(f format.Formatter) { f.WriteString(0, "GROUP") f.WriteHex(5, g.handle) f.WriteString(102, "{ACAD_REACTORS") f.WriteHex(330, g.owner.Handle()) f.WriteString(102, "}") f.WriteHex(330, g.owner.Handle()) f.WriteString(100, "AcDbGroup") f.WriteString(300, g.Description) f.WriteInt(70, 0) if g.selectable { f.WriteInt(71, 1) } else { f.WriteInt(71, 0) } for _, e := range g.entities { f.WriteHex(340, e.Handle()) } }
// Format writes data to formatter. func (lt *LineType) Format(f format.Formatter) { f.WriteString(0, "LTYPE") f.WriteHex(5, lt.handle) if lt.owner != nil { f.WriteHex(330, lt.owner.Handle()) } f.WriteString(100, "AcDbSymbolTableRecord") f.WriteString(100, "AcDbLinetypeTableRecord") f.WriteString(2, lt.name) f.WriteInt(70, 0) f.WriteString(3, lt.Description) f.WriteInt(72, 65) f.WriteInt(73, len(lt.lengths)) f.WriteFloat(40, lt.TotalLength()) for _, l := range lt.lengths { f.WriteFloat(49, l) f.WriteInt(74, 0) } }
// Format writes data to formatter. func (b *BlockRecord) Format(f format.Formatter) { f.WriteString(0, "BLOCK_RECORD") f.WriteHex(5, b.handle) if b.owner != nil { f.WriteHex(330, b.owner.Handle()) } f.WriteString(100, "AcDbSymbolTableRecord") f.WriteString(100, "AcDbBlockTableRecord") f.WriteString(2, b.name) f.WriteInt(70, 0) f.WriteInt(280, 1) f.WriteInt(281, 0) }
// Format writes data to formatter. func (e *entity) Format(f format.Formatter) { f.WriteString(0, EntityTypeString(e.Type)) f.WriteHex(5, e.handle) if e.blockRecord != nil { f.WriteString(102, "{ACAD_REACTORS") f.WriteHex(330, e.blockRecord.Handle()) f.WriteString(102, "}") } if e.owner != nil { f.WriteHex(330, e.owner.Handle()) } f.WriteString(100, "AcDbEntity") f.WriteString(8, e.layer.Name()) }
// WriteTo writes ENTITIES data to formatter. func (es Entities) WriteTo(f format.Formatter) { f.WriteString(0, "SECTION") f.WriteString(2, "ENTITIES") for _, e := range es { e.Format(f) } f.WriteString(0, "ENDSEC") }
// WriteTo writes BLOCKS data to formatter. func (bs Blocks) WriteTo(f format.Formatter) { f.WriteString(0, "SECTION") f.WriteString(2, "BLOCKS") for _, b := range bs { b.Format(f) } f.WriteString(0, "ENDSEC") }
// WriteTo writes TABLES data to formatter. func (ts Tables) WriteTo(f format.Formatter) { f.WriteString(0, "SECTION") f.WriteString(2, "TABLES") for _, t := range ts { t.Format(f) } f.WriteString(0, "ENDSEC") }
// Format writes data to formatter. func (p *AcDbPlaceHolder) Format(f format.Formatter) { f.WriteString(0, "ACDBPLACEHOLDER") f.WriteHex(5, p.handle) if p.owner != nil { f.WriteString(102, "{ACAD_REACTORS") f.WriteHex(330, p.owner.Handle()) f.WriteString(102, "}") f.WriteHex(330, p.owner.Handle()) } }
// Format writes data to formatter. func (d *Dictionary) Format(f format.Formatter) { f.WriteString(0, "DICTIONARY") f.WriteHex(5, d.handle) f.WriteString(100, "AcDbDictionary") f.WriteInt(281, 1) for k, v := range d.item { f.WriteString(3, k) f.WriteHex(350, v.Handle()) } }
// Format writes data to formatter. func (a *AppID) Format(f format.Formatter) { f.WriteString(0, "APPID") f.WriteHex(5, a.handle) if a.owner != nil { f.WriteHex(330, a.owner.Handle()) } f.WriteString(100, "AcDbSymbolTableRecord") f.WriteString(100, "AcDbRegAppTableRecord") f.WriteString(2, a.name) f.WriteInt(70, 0) }
// Format writes data to formatter. func (v *Viewport) Format(f format.Formatter) { f.WriteString(0, "VPORT") f.WriteHex(5, v.handle) if v.owner != nil { f.WriteHex(330, v.owner.Handle()) } f.WriteString(100, "AcDbSymbolTableRecord") f.WriteString(100, "AcDbViewportTableRecord") f.WriteString(2, v.name) f.WriteInt(70, 0) for i := 0; i < 2; i++ { f.WriteFloat((i+1)*10, v.LowerLeft[i]) } for i := 0; i < 2; i++ { f.WriteFloat((i+1)*10+1, v.UpperRight[i]) } for i := 0; i < 2; i++ { f.WriteFloat((i+1)*10+2, v.ViewCenter[i]) } for i := 0; i < 2; i++ { f.WriteFloat((i+1)*10+3, v.SnapBase[i]) } for i := 0; i < 2; i++ { f.WriteFloat((i+1)*10+4, v.SnapSpacing[i]) } for i := 0; i < 2; i++ { f.WriteFloat((i+1)*10+5, v.GridSpacing[i]) } for i := 0; i < 3; i++ { f.WriteFloat((i+1)*10+6, v.ViewDirection[i]) } for i := 0; i < 3; i++ { f.WriteFloat((i+1)*10+7, v.ViewTarget[i]) } f.WriteFloat(40, v.Height) f.WriteFloat(41, v.AspectRatio) f.WriteFloat(42, v.LensLength) f.WriteFloat(43, v.FrontClip) f.WriteFloat(44, v.BackClip) f.WriteFloat(50, v.SnapAngle) f.WriteFloat(51, v.TwistAngle) }
// Format writes data to formatter. func (b *Block) Format(f format.Formatter) { f.WriteString(0, "BLOCK") f.WriteHex(5, b.handle) f.WriteString(100, "AcDbEntity") f.WriteString(8, b.layer.Name()) f.WriteString(100, "AcDbBlockBegin") f.WriteString(2, b.Name) f.WriteInt(70, b.Flag) for i := 0; i < 3; i++ { f.WriteFloat((i+1)*10, b.Coord[i]) } f.WriteString(3, b.Name) f.WriteString(1, b.Description) f.WriteString(0, "ENDBLK") f.WriteHex(5, b.endhandle) f.WriteString(100, "AcDbEntity") f.WriteString(8, b.layer.Name()) f.WriteString(100, "AcDbBlockEnd") }
// Format writes data to formatter. func (c *Class) Format(f format.Formatter) { f.WriteString(0, "CLASS") }
// WriteTo writes HEADER information to formatter. func (h *Header) WriteTo(f format.Formatter) { f.WriteString(0, "SECTION") f.WriteString(2, "HEADER") f.WriteString(9, "$ACADVER") f.WriteString(1, h.Version) f.WriteString(9, "$INSBASE") for i := 0; i < 3; i++ { f.WriteFloat((i+1)*10, h.InsBase[i]) } f.WriteString(9, "$EXTMIN") for i := 0; i < 3; i++ { f.WriteFloat((i+1)*10, h.ExtMin[i]) } f.WriteString(9, "$EXTMAX") for i := 0; i < 3; i++ { f.WriteFloat((i+1)*10, h.ExtMax[i]) } f.WriteString(9, "$LTSCALE") f.WriteFloat(40, h.LtScale) f.WriteString(9, "$HANDSEED") f.WriteHex(5, h.handseed) f.WriteString(0, "ENDSEC") }
// Format writes data to formatter. func (p *Polyline) Format(f format.Formatter) { p.entity.Format(f) f.WriteString(100, "AcDb3dPolyline") f.WriteInt(66, 1) f.WriteString(10, "0.0") f.WriteString(20, "0.0") f.WriteString(30, "0.0") f.WriteInt(70, p.Flag) for _, v := range p.Vertices { v.Format(f) } f.WriteString(0, "SEQEND") f.WriteHex(5, p.endhandle) f.WriteString(100, "AcDbEntity") f.WriteString(8, p.Layer().Name()) }
// Format writes data to formatter. func (st *Style) Format(f format.Formatter) { f.WriteString(0, "STYLE") f.WriteHex(5, st.handle) if st.owner != nil { f.WriteHex(330, st.owner.Handle()) } f.WriteString(100, "AcDbSymbolTableRecord") f.WriteString(100, "AcDbTextStyleTableRecord") f.WriteString(2, st.name) f.WriteInt(70, 0) f.WriteString(40, "0.0") f.WriteString(41, "1.0") f.WriteString(50, "0.0") f.WriteInt(71, 0) f.WriteString(42, "0.2") f.WriteString(3, st.FontName) f.WriteString(4, st.BigFontName) }