DXF2GBR Engine

Floating Layer 0

The FLOAT0 option in dxf2gbr was designed to mimic AutoCAD's special display behavior when blocks are inserted. Consider image below from the AutoCAD file float0.dwg:

AutoCAD Float0.dwg example

    The first column contains entities drawn directly on layers 0, L1 and L2.

    The second column is a block insertion (test) on layer 0.

    The third column is a block insertion (test) on layer L1

    The fourth column is a block insertion (test) on layer L2

Notice that when test is inserted on L1 that the entities drawn in the block on layer 0 take on the color of L1 and when test is inserted on L2 the same entities drawn in the block on layer 0 take on the color of L2. That is, they appear to float to the insertion layer from 0.

Only entities drawn on Layer 0 will "float" to the insertion layer. Entities drawn on any layer other than 0 always retain their color and linetype.




How to Control Floating of Layer 0

When DXF2GBR engine encounters a block insertion it must first explode the block to process any entities contained inside the block. This would normally return the entities on layer 0 back to 0. However because AutoCAD users expect to see such entities on the insertion layer, DXF2GBR has the ability to "remember" the insertion layer for those entities and to output them to the appropriate Gerber file.

To run this example you can get the dxf,bat,rsp,lst,apt file here: float0.zip

The user can control this behavior by a command line option in the response file. The option to use to turn on the float layer 0 behavior is -z. i.e.

"C:\test\float0.dxf" MM 0.001 "@C:\test\float0.lst" 1 -z -nlnk -t1 -on10,10 -c:0 "-cfg:C:\test\float0.apt"
Output with Float0 set on using -z option

If the -z command line is not present then when the blocks are exploded all entities are processed on the layer they "belong" to, even those on layer 0.

"C:\test\float0.dxf" MM 0.001 "@C:\test\float0.lst" 1  -nlnk -t1 -on10,10 -c:0 "-cfg:C:\test\float0.apt"
Output with Float0 set without -z option



What is the Purpose of FLOATZERO in the Aperture List?

In the aperture list there is a directive called FLOATZERO. Yet whether FLOATZERO is set to ON or set to OFF no difference in output is noticed. Why?


LINK off
TEXT D11
LINE d10
MSCALE 1.0
ARCRES 9
REMOVE_HATCH on
FLOATZERO off
FONT C:\Program Files\AutoCAD 2002\Fonts\romans.shx
FONTDIR C:\Program Files\AutoCAD 2002\Fonts
CIRANG 360
ABSOLUTE on
REMOVE_DIM off

The purpose of FLOAT0 in the aperture file is solely for the purpose of persistence. The command line is always created from scratch and normally deleted upon completion of the engine. There is no way to "remember" the setting for FLOAT0 from the command line. Therefore the entry in the .apt file is merely to enable a GUI to remember whether float0 was on or off. If you don't need to "remember" this setting then you need not put the FLOATZERO directive in the .apt file.



Page    1   |   2   |   3   |   4   |   5   |   6   |   7   |   8   |   9   |   10