[Radiance-general] How to generate surface with gensurf program?

Lars O. Grobe grobe at gmx.net
Wed Nov 9 07:11:37 PST 2011


Hi Marija!

> I'm trying to model one complex blinds' lamelas in Radiance.
> I have lamela model in SketchUp but when exported to Radiance it gives
> 70 surfaces per one lamela - which is too much for simulations.
> 
> So I have an idea to try to model surface with gensurf, but no idea how
> exactly.
> 
> Since I have SketchUP export I can extract data about sruface points so
> it is some array of (x,y,z) coordinates:
> (x1, y1,z1), (x2,y2,z2)...(xn,yn,zn).
> Points in x and z aren't equidistant, while y={0,1}.
> 
> Problem is how to use these values in gensurf.
> I want to have surface composed of multiple surfaces in x direction and
> 1 surface in y direction (length of a lamela)
> 
> I suppose appropriate command format would be:
> /gensurf mat name dfile dfile dfile m n /
> 
> What is the format of dat files I need here? I tried to understand
> something from manpage but no sucess.
> 
> Is this the right way to model complex blind lamela (it has few
> curvatures and w shape etc.)?

My impression is that this will get quite complicated. gensurf would
still need the coordinates to come in the right ordering, and I do not
know how you could achieve that when exporting from Sketchup. Without
that, gensurf does not know which vertex locations to combine into one
surface. Also, you would again get lots of surfaces, as gensurf would
create flat surfaces between the vertex locations.

Two alternatives:

a) If you exactly know the profile of your lamellas, you could use a
functional description instead. This would still lead to quite a lot of
surfaces for each, but probably less. And (most important) you would
have great control on the resolution of the facetting. This would e.g.
make it possible to find out at what resolution you see no effect on
your results any more.

b) If you need to rely on your exported Sketchup model, I would advice
looking into instances or the mesh object. Create a "short" lamella,
something like one unit length, and export it. Make it a frozen instance
(using oconv -f) or a mesh object (using obj2mesh). Create a small scene
file containing only the mesh or instance primitive for this compiled
geometry. Than build your blinds from this element using an xform array
in your scene file. This will lead to very little memory consumption for
these objects.

If your shading systems consists of lots of blinds, I would even
consider using instances when creating geometry using gensurf (case a).
However in typical scenes, you do not reach critical polygon counts yet.
Radiance is very good in handling lots of surfaces, unless memory gets
used up.

Cheers, Lars.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4438 bytes
Desc: S/MIME Kryptografische Unterschrift
URL: <http://www.radiance-online.org/pipermail/radiance-general/attachments/20111109/69b15fcb/attachment.bin>


More information about the Radiance-general mailing list