# The following was supposedly scribed by # Bruno Postle # on Friday 27 August 2004 08:56 am: >So blocks, symbols, xrefs, images and viewports are all >manifestations of the same 'reference' entity. > >A reference entity always points to a directory/drawing and >positions/scales/rotates it in coordinate-space. okay, but an image isn't a proper drawing. Maybe these five entities look really similar, but they'll each need their own type and nuances. >- block: a reference to a drawing in a sub-directory Do we have a "blocks/" directory that these live in? Seems that it would work the best, since you might need a block named "headers" or something. >- symbol: same as a block Okay, why are they called two things? Does this map to some autocad/microstation entity type? >- xref: a reference to a drawing outside of the current directory Right, but it would be good to be able to package these into the drawing. I think we should look at using an "xref/" directory which contains symlinks to the external directories. These could then be "bound" to the drawing for tarballing and etc. >- image: a block containing an image file This should just point to the image filename. I'll also add "+ a boundary" for clipping. >- viewport: a reference to a drawing + a boundary This brings up the issue of model/paper space again. If you convert a dwg file with 5 layouts to rhizopod, do we need 6 directories? Pythoncad doesn't have layouts yet, and the model I'm pushing for there is to have separate files for the layouts, but it still needs to be somehow translatable into dwg. What about dgn? What's microstation's "layout" paradigm? The viewport does not exists in modelspace in a dwg file (although there is a "view" entity, but that's different.) Additionally, viewports need to map model-space into paper-space as well as holding a list of layer properties, current ucs, etc. --Eric -- "Unthinking respect for authority is the greatest enemy of truth." --Albert Einstein