ecoff rdoff point 10001,10001; golayer MacroConstruction1 golayer MacroConstruction :mcoStart gv mcoColDS 18 gv mcoColLS 16 ge mcoEntity ^DEntity iferr mcoDone gp mcoP1 % 0 mcoentity line mcoP1 ^D С какой стороны?; selbyp erase gp mcoP2 @0,0 gbrng mcoTEST1 mcoP1 % 1 mcoentity gbrng mcoTEST2 mcoP1 mcoP2 ifp mcoTEST1-mcoTEST2 mcoControl1 gv mcoSIDE -1 ifp mcoTEST2-mcoTEST1-180 mcoControl2 gv mcoSIDE 1 go mcoControl2 :mcoControl1 gv mcoSIDE 1 ifp mcoTEST1-mcoTEST2-180 mcoControl2 gv mcoSIDE -1 :mcoControl2 gv mcoClosed 1 gdist mcoTestDist % 0 mcoEntity % 100 mcoEntity ifz mcoTestDist mcoControl3 gv mcoClosed 0 :mcoControl3 gdist mcoTotLen % 0 mcoEntity % .1 mcoEntity gv mcoTotLen mcoTotLen*1000 gv mcoUnit 100/mcoTotLen gv mcoremainder mcoTotLen-(2.5*mcoClosed) gv mcosegments 0 :mcoremainderloop ifn mcoremainder-7.5 mcodoneremainderloop gv mcosegments mcosegments+1 gv mcoremainder mcoremainder-7.5 go mcoremainderloop :mcodoneremainderloop gv mcopartlen ((mcoTotLen-(2.5*mcoClosed))-((mcosegments-1)*2.5))/mcosegments gv mcoPartFrag mcopartlen/5 selby1 CHANGEC mcoentity 0 CHANGEC2 mcoentity mcoColDS CHANGELW mcoentity 1.5 CHANGEFS mcoentity SOLID selbyp lwidth 2.5;fstyle solid;color 0 gv mcoLC (2.5*mcoClosed) :mcoLoop gbrng mcoB1 % mcoLC*mcoUnit mcoEntity % (mcoLC*mcoUnit)+.01 mcoEntity gp mcoP1 ref % mcoLC*mcoUnit mcoEntity