![]() |
www.schorsch.com | ||
Free Downloads | |||
Spacelin manual pageTable of Contents
Synopsys
SPACELINES 3D construction lines
FLATLINES 2D construction lines
DescriptionSpacelines/Flatlines are an Autocad extension to create auxiliary construction lines on a special layer.
PlatformsCurrently, the following platforms are supported:
InstallationCopy the application file "spacelin(.exe|.arx)" and the slide library file "spacelin.slb" to a location on your hard disk drive that Autocad searches from its "acadprefix" system variable. The Autocad system variable "acadprefix" is automatically set from the "ACAD" environment variable on startup. Please refer to your systems user manual of your specific operating system platform to find out about how to set environment variables. If you don't know how to proceed with the following steps, ask your system manager to help you. The program will still work without, but you will use it with much more convenience if you do so.
User Interface
Commands acting in 2D have names starting with "FL..." for "Flatlines".
Commands acting in 3D have names starting with "SL..." for "Spacelines".
Please refer to the actually installed program parameters file
"acad.pgp" for the names of the keyboard shortcuts defined for your
installation.
Edge:
accepts the selection of almost every straight edge in a drawing to specify either a direction vector, an angle reference or a location in space. There is no limitation whether this edge belongs to a specific entity type or not as long as the entity contains straight edges. Point, arc, circle, shape and text entities as well as curve fitted meshes and polylines do not contain straight edges. In R14, entities defined by other extension applications may or may not contain straight edges to select. Currently, only the entities defined by the built in acis modeller are recognised. The menufiles sl11/sl12/sl14.mnu offer popup, screen, and icon menu sections with all spaceline and flatline commands for Autocad R11, R12 and R14 respectively. The spacelin.pgp file contains recommended keyboard shortcuts for many of the commands. You are encouraged to include the contents of those two files to your standard acad.mnu and acad.pgp files for convenience. 3D FrameLength of all lines is restricted to fit inside a virtual box defined as the equivalent of drawing limits in space. If not explicitly set, this 3D frame shares X and Y values with the normal drawing limits, with both Z values set to 0.The 3D frame settings are always relative to world coordinates and can be modified with the commands "SLFRAME" and "FLFRAME". The latter will not change Z values. There is a seperate set of frame extent values maintained for modelspace and paperspace. For obvious reasons, the paperspace frame does not have any Z values. The commands "SLLIM" and "FLLIM" reset the X and Y boundaries of the 3D frame to drawing limits. The volume of the 3D frame can be displayed by the command "SHOWFRAME". This command does not modify the drawing database. The frame will just be displayed temporarily at the current viewport until the next redraw. The command "SHOWFRAME"can be used transparent to other Autocad commands if selected from the menu. If a line to be generated by any function fails to pass through the virtual box of the 3D limits a warning message
line [n] out of 3D limits!
is displayed and the line is not created. The number [n] is only displayed for those functions generating more then one line at a time. 2D commands:
2D Versus 3DMost functions exist in each a 2D and a 3D version. In 2D, points and selected edges will be projected to the X/Y plane of the current UCS (resp. to the current elevation) before processing. These commands are designed for use in plan view supporting 2D drafting operations. If the view is not plan to the current UCS, a warning message:
View is not plan to UCS. Command results may not be obvious.
will be issued.
Still, even 2D lines cannot be generated if they fall outside the 3D
frame because the current UCS might be placed in an arbitrary position
and angle relative to the World coordinate system.
In 3D Commands, entered values will be processed directly in relation to the current UCS. However, if the lower and upper Z value of the 3D frame are identical, most of the 3D lines are likely to be out of range. Note that some auxiliary commands are supplied in each a 2D and a 3D version of identical behaviour for orthogonality. Commands
Deleting Linesthe commands "SLDEL" and "FLDEL" delete all construction lines visible in the current viewport (after a "Yes or No" prompt). for technical reasons this commands work only in non perspective views. Of course, the auxiliary lines can also be deleted manually by the "ERASE" command and manipulated by any other Autocad command. They will still be recognized by "SLDEL" and "FLDEL", as long as they are not moved to another layer or put inside a block. 2D command:
Layer Switches
Since construction lines are inserted on the special layer
"ZZ_SPACELIN", visibility can be turned on and off with that layer.
The commands "SLON" and "FLON", or "SLOF" and "FLOF" respectively turn
the layer "ZZ_SPACELIN" on and off.
Axial FunctionsLines will be drawn in parallel to one main axis of the current UCS. The commands repeat asking for a point to fix the position of each line. Enter <return> to exit the loop. 2D commands:
Angular FunctionsLines are drawn parallel to one of the main planes of the current UCS. Note that each command exists in a right hand and a left hand version. The angle of the line relative to the first axis of the respective plane needs to be entered. In case of "SLXY" or "FLXY" the prompt would be:
Angle in XY or adaption plane or Adapt/Last <default>:
The default input is a numeric angle entered on the keyboard or
specified interactively by selecting two points relative to the X axis
of the current UCS.
Entering <return> selects the value last used by the specific function
or zero if called the first time in an editing session.
Alternatively one of the following keywords can be entered:
Each command then repeats prompting for a point for the position of each line. Enter <return> to exit the loop. 2D commands:
Vector FunctionsLines will be drawn parallel to a specified vector.
Direction vector or <Adapt>:
The vector may be entered in two different ways.
Then the commands repeat asking for a point for the position of each line. Enter <return> to exit the loop. 2D command:
2 Point FunctionsEach line is drawn through two specified points. The commands keep prompting for points to position each line. Enter <return> to exit the loop. 2D command:
Parallel FunctionsLines are drawn parallel to user selected edges of the existing drawing. You can select from three methods to specify value and direction of the offset:
Point/Vector/distance <default>:
Normal (Perpendicular) Functions
Lines are drawn as normals to user selected edges of the existing
drawing through an entered point. The commands repeatedly ask for an
edge and a point each to compute the position of a line.
Interpolating FunctionsA specified number of lines is drawn between two existing edges of the drawing:
number of lines <default>:
Enter <return> to select the number last used, or one if called the
first time in an editing session. You are then repeatedly prompted to
select two existing edges of the drawing. The edges must not be
collinear or the functions will exit on printing a warning message.
Enter <return> to exit the loop.
If the selected edges are parallel, the function draws the lines(s) dividing the distance between them according to a regular grid. All lines will be in the same plane as the two edges. If the edges are not parallel, the result differs if the edges intersect in space or if they don't. In testing this, the edges are assumed to be of infinite length. In 2D, All non paallel edges intersect. If the edges intersect you are prompted to specify the angle to position the lines: Point or <Inner>/Outer angle:
All lines will be in the same plane as the two edges and will meet at their intersection point (or the intersection point of their projection to the X Y plane in 2D). If the edges in 3D do not intersect then the prompt looks like: <Inner>/Outer angle: Input options similar as above. You cannot specify the angle to fill on screen, because there is no proper location to do so. Since the edges have no common plane in this case, the line(s) don't either. But they are parallel to the plane defined if they would intersect, while maintaining their directions. Relative to this plane, the angles are computed exactly the same way as in the intersecting case. The location of the lines is defined by dividing the shortest distance between the two edges into two or more regular sections. As the result of all these operations, the line(s) are member of a spiral staircase helix or of a hyperbolic paraboloid. (Can anyone explain this in a simpler way?) If the edges (intersecting or not) form a right angle, the options for "Inner" and "Outer" produce their results depending which ends of the edges have been picked when selecting them. The vector of an edge is taken to start at the endpoint closer to the point picked. The inner angle will be the angle starting from the vector of the first selected edge towards the vector of the second one. 2D command:
Distance Function (3D)Lines are drawn connecting the points on two selected edges of a drawing that define the smallest distance or those edges. This line is a normal to both edges even if they intersect. The commands repeats prompting for two edges in turn to determine the position of each line. Enter <return> to exit the loop. 3D command
Grid Function (2D)The command generates a grid on the current elevation. The lines of the grid are parallel to the X and Y axis of the current UCS. First the starting point must be entered:
Lower Left corner of grid:
Then you are prompted for the mode to divide the grid in X direction:
X Spacing or <Variable>:
If a real distance is entered the next prompt asks for:
Number of Cells: <1>:
So the grid will have the specified number of spaces of the specified width in X direction.
The same applies for the Y direction whith the respective prompts:
Y Spacing or <Variable>:
and:
Number of Cells: <1>:
or:
Y Variable spacing:
As soon as all the Values are specified the grid is drawn. Frame settings are ignored. 2D command
Rectangle (2D)Enter two points which are used as opposite corners of a rectangle parallel to the X and Y axis of the current UCS on the current elevation. Frame settings are ignored. 2D command
EnvironmentIn R11, the setting of the 3D frame is stored in a block on the layer "ZZ_SPACELIN" for use in future editing sessions.In R12 or higher, the setting of the 3D frame is stored in an anonymous block on the layer "ZZ_SPACELIN". Files
DiagnosticsThe error and diagnostic messages are mostly self explanatory, but here are some more detailed explanations all the same:
Any other error is considered unknown and will probably be handled by the ADS programming interface or by the operating system. In other words: Things may crash! Undetected errors are handled as if no error occured. CaveatsThis program will not replace your spatial imagination. Spacelin is designed as an auxiliary tool to help the user to locate points in space that would be even more difficult to find without. It cannot help you if you are unsure what points you're actually looking for. This would require artificial intelligence, which is beyond my capabilities to implement.The results of many 3D functions are not obvious from some viewpoints. It is recommended to use several viewports in order to watch from different points of view what is going on. The block on the layer "ZZ_SPACELIN" is kept unique. Do not insert other blocks on that layer or they will, all exept one, be deleted next time the application is loaded. There is no way to determine ahead of time which one of the blocks found will be used and which are discarded. This means that the stored 3D frame settings are likely to get lost in the process. The invisible block cannot be removed from the drawing in any straightforward way (except with the help of autolisp or ads/arx). As a consequence it is impossible to purge the layer "ZZ_SPACELIN", even if you have removed all spacelines from the drawing. This is also true if you inserted another drawing as a block which used spacelin. Bugs and LimitationsDue to numerical instability of floating point operations it can happen that lines are not placed correctly in some circumstances. This problem has been observed with interpolated lines parallel to one axis of the current UCS. Usually the lines will be drawn all on top of each other at the location of the first reference edge in those cases. I try to eliminate some of the problem cases with every release cycle, but there may still be a few hidden somewhere.
Polylines with a width are usually drawn by Autocad with the outside
edges of successive segments connected to make a continuous path. If the
angle between the segments is "very sharp" though, the ends are broken
up and closed seperately with orthogonal lines through the endpoint.
Spacelin tries to follow this behaviour and find the connecting resp.
ending lines. However, it may fail to do so correctly in boundary cases.
In drawings edited with Autocad R12/14, the block to store the frame data is made an anonymous block, which will not be listed by the "?" option of the "insert" and "block" commands. There is a bug in Autocad R11 which makes it impossible to handle anonymous blocks if one of them resides at the beginning of the internal block table. In drawings edited by R11, the 3D frame data will therefore be stored in a normal block whith the name "ZZ_LIMITS". This block will then appear at the end of block listings of that drawing. If a drawing is transferred to or from R11, SPACELIN will replace its data block to make it an anonimous or a named block as apropriate.
How to report bugs:
AuthorGeorg MischlerLegaleseSpacelines 1.0 Copyright © 1995 Georg Mischler. Spacelines 1.1 Copyright © 1998 Georg Mischler. All rights reserved. Permission to use and copy this software for any purpose and without fee is hereby granted provided that the software is not altered in any way, both the above copyright notices and this permission notice appear in all supporting documentation and the full documentation is included. Commercial distribution of this software is permitted, provided that it is distributed unmodified and in its entiety with all documentation, and the price charged is not significantly higher than the cost of copying and distributing this software and its documentation. THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY. ALL IMPLIED WARRANTIES OF FITNESS FOR ANY PARTICULAR PURPOSE AND OF MERCHANTABILITY ARE HEREBY DISCLAIMED.spacelin homepage | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
| |||
|
http://www.schorsch.com/download/spacelin/sl_man.html Copyright © 1998-2003 Georg Mischler. All rights reserved. |