Draw a fence across a drawing and every object it crosses is cut at the crossing point. Nothing is erased and nothing moves — objects are simply split in two where the fence passes through them.
What FenceCut does
This is the operation you want before deleting half a plan, before moving a section of a site layout, or before putting a match line through a drawing that has to be split across two sheets. TRIM and BREAK both do parts of it, but neither will run a line across a drawing and divide everything it meets in one pass.
The fence is either picked point by point, or taken from a line or polyline you have already drawn — useful when the match line is real geometry that has to stay.
How to use it
- Load the routine with
APPLOAD, or put it on your support file search path. - Type
FENCECUT. - Pick the fence point by point, or select an existing line or polyline to use as one.
- Everything crossing it is split where it crosses.
How it works
Objects are gathered with a fence selection, which is AutoCAD’s own way of asking “what does this line cross” and is far more reliable than testing crossing windows segment by segment.
Each object is then intersected against the fence through the object itself rather than by hand, so arcs, ellipses, splines and polylines with bulges all work.
Each crossing point is then broken, using the point both to identify the object and to place the break. That one trick is what lets a single piece of code split every curve type: whatever is under that point gets divided there, with no gap.
Circles are a special case, and necessarily so. A circle has no ends, so there is no such thing as breaking one at a single point — the result would still be one object. A circle crossed twice is therefore replaced by two arcs spanning between the crossings, which is the only sensible reading of “cut this circle in half”. A circle the fence only clips once is left alone, and reported.
Layer, colour, linetype and width all come through untouched, because objects are broken rather than deleted and redrawn.
Notes and limits
- Nothing is erased. Objects are split where they cross.
- A circle clipped only once is left alone and reported — there is no meaningful single-point break.
- The temporary fence polyline is removed before the command ends.
- One undo group covers the whole pass.
Download and details
| Name | FenceCut — split every object crossing a fence, in one pass |
| Download | FenceCut.lsp — 12.3 KB, plain AutoLISP source. Downloads directly; no zip to unpack. |
| Type | AutoCAD AutoLISP routine |
| Command | FENCECUT |
| Requires | the ActiveX layer (loaded automatically by the routine with vl-load-com). |
| Source size | 12.3 KB, 291 lines |
| Error handling | Yes — a *error* handler restores every system variable it changed, on cancel as well as on error. |
| Undo | The whole operation is wrapped in a single undo group, so one U reverses all of it. |
| Compatibility | AutoCAD (any release with AutoLISP), BricsCAD, ZWCAD, GstarCAD, ProgeCAD and other IntelliCAD-based platforms. AutoCAD LT needs a LISP enabler. No .NET, no ObjectARX, no installer. |
| Author | YZ, August 2026 |
| Licence | Free to use, supplied “as is” with no warranty. |
References
- CLIPBOX LISP — clip to a rectangle and delete the outside
- HIDESECTION LISP — break an object and hide the middle piece
- VERTINJECT LISP — adding a vertex rather than breaking
- More free AutoLISP routines on this site
- Wisey’s Steel Shapes — free structural steel section drawing program