Do you know what mechanisms used in Sketch Up's sand box tools?


#1

Hi. I’m a student at Kyung Hee university, Department of Architectural Eng. at South Korea.
We are researching about Free-form structure. And SketchUp helps a lot!

Our research is producing free form concrete segments by using CNC machine. And we already made machine, but we need to generate information that to put into that machine.

We are thinking how to break down the free form surfaces into segments to produce. And SketchUp
sandbox tools creates lots of dots and triangles, when creates its surfaces. It’ll be helpful to create
free form concrete segments, if I use this mechanism.

We are wondering what mechanism used in sandbox tools, when creates free form surfaces and
if you let me know it’ll help a lot!

Thanks!

Cho Won Hyun.


#2

Hi,
SketchUp is a surface modeler, that means everything consists of linear edge segments or planar facets. All tools that generate curved surfaces just make them out of planar facets.

Sandbox tools is a SketchUp extension and uses SketchUp’s Ruby API, so every other developer would be able to produce the same. Take also a look at other extensions that make free form surfaces.

The source code of the sandbox tools is not open, so one can not find out more info, but by looking at it one can guess they use just vector math to calculate vertex positions in 3d space, together with some type of sigmoidal interpolation and a “Tool” class for user interaction.


#3

I don’t know what mechanisms are used in the sand box, but if you can work with parametric equations, you might want to take a look at the U-V PolyGen plugin. It’s open source so that you can work through it and maybe piece together some code to do what you need it to. The example data for the plugin generates this shape:


By changing the u-v start and end values, you can create smaller subsets of the original and also increase the number of polygons:

Adding a base to each piece allows you to make each piece independently of the others and fit them together later:


While this may not be what you are looking for, it may give you some insight into what mechanism(s) might be used in the sand box (note, however, that using the U-V plugin allows you to create “forever smooth” surfaces since they are always continuous over U and V).

U-V PolyGen: https://sites.google.com/site/spirixcode/code/uv_polygen.rb