3 point cut

The most used method in CAD is to cut 3 points and select the side to be deleted
Can you do it in rhinoceros

Hi @SONG1,

you can split with an infinite plane defined by 3 points, i have this macro for it:

! _Split _Pause _IP _3Point _Pause _Pause _Pause _Enter

To use it paste above in the MacroEditor or a button, then pre-select the box and run it. It does only split, so you’ll need to delete the parts on your own.


1 Like

How to do
The third point is perpendicular to the current view, perpendicular to the screen

Here’s a small Python script that let’s you select three points and then splits a polysurface into two or more fragments. The planar holes of these fragments get capped.

This should give you an idea on how to approach something like this.
You can turn the Python script into a macro or button, or simply call it with RunPythonScript.

split-brep.py (1.2 KB)

! _Trim _IP _3Point _Pause _Pause _Pause _Enter
This is the way I use pruning.The way of trimming will be better, Can you write one in Python
888 (1)

Too fast… :stuck_out_tongue_winking_eye:
Here’s mine:

SplitBrep3Pts.py (1.6 KB)

You need the surface is close, which is not easy to use

Yes, if you want solid objects to finish you need solid objects to start.

Trimming can work with multiple surfaces,but cut can’t do it

For my script above it doesn’t matter whether the polysurface is open or closed.
If you don’t want the script to cap the fragments, simply comment out the last two lines:

# for fid in fragment_ids:
#     rs.CapPlanarHoles(fid)

You cannot select multiple surfaces in this script

Feel free to modify it to fit your needs.

Here are a couple more:

For closed “solids”:
BooleanSplitBreps3Pts.py (1.9 KB)
(keeps objects solid)

For generic breps (open or closed):
SplitBreps3Pts.py (1.7 KB)
Splits but does not cap, results will not be solid


Actually, the trim is very useful,
How to write python
!_Trim _IP _3Point _Pause _Pause _Pause _Enter

_sellast _cap _enter

Sorry, too fast conversion from one object to multiple objects.

Here are the fixed ones.

BooleanSplitBreps3Pts.py (1.9 KB)
SplitBreps3Pts.py (1.7 KB)

1 Like

Thank you. This one is also very useful. The trimming method can quickly delete one side

Your script can cut multiple surfaces, which is very beautiful

The animation I demonstrated above also has a two-point cutting function. How to write
Equivalent to the third point perpendicular to the screen

If your script can be upgraded and optimized, it will be more beautiful and useful to combine it into only one script