Modeling Challenge

I've got a modeling problem. I'm trying to accurately create this... but so far all I've managed to do is waste a bunch of time.

http://members.fortunecity.com/dela/

(note the bottom image is a radiance image)

Currently I have two individual cylinders each as a rad file. Then I have a scene file that xforms these into a ~16,000 unit array. That file is then rotated and transformed onto the building by an additional scene file, which is then called by oconv by a "rad" like script.

It works, but it takes a very long time to oconv (I guess b/c it has to run xform 16000 times and Radiance on Cygwin is very slow at this based on benchmark results) and so far I have been unable to create an actual rendering for some reason.

What other options might work for something like this? I've thought about using a mix of void and metal similar to Georg Mischler's perforated metal technique. Would this be more efficient?

My only concern about a flat plane is that you would not get the same "cut off" as the 3D grid. However, given the small scale of the grid to the large scale of the building, this is perhaps negligible.

{
perforate.cal
Perforation function for approximately horizontal sufaces,
for use in a mixfunc. Foreground is solid, background the holes.
Set background to empty for a true perforation, or to a different
material for polka dots.

Relative hole size is determined by A1.
Size of single circle is 1 - scale as required (eg. 0.05m).

x_hole cuts holes in x-direction (through the y-z plane)
y_hole cuts holes in y-direction (through the x-z plane)
z_hole cuts holes in z-direction (through the x-y plane)

Georg Mischler 30. 04. 1993
}

`xn = mod(Px, 1) - 0.5;
`yn = mod(Py, 1) - 0.5;
`zn = mod(Pz, 1) - 0.5;

`outofcirc(x, y, r) = if(sqrt(x*x + y*y) - r, 1, 0);

z_hole = `outofcirc(`xn, `yn, A1);
x_hole = `outofcirc(`yn, `zn, A1);
y_hole = `outofcirc(`zn, `xn, A1);

{ end of perforate.cal }

Is there anything similar that would create the type of grid I'm looking for?

Thanks for any assistance!

Mark de la Fuente

Hi Mark,

There is a file called grating.cal that models depth of 3-D grids and uses a BRTDfunc type to approximate the ensemble behavior. I posted it in response to a similar request from Richard Clibborn:

If you want the actual appearance of the blinds, rather than simply its transmission at a distance, then a mixfunc is required. I don't have time to write one right now, or even modify Georg's.

-Greg

···

From: "Mark de la Fuente" <MdelaFuente@wmtao.com>
Date: June 17, 2005 9:15:52 AM PDT

I've got a modeling problem. I'm trying to accurately create this... but so far all I've managed to do is waste a bunch of time.

http://members.fortunecity.com/dela/

(note the bottom image is a radiance image)

Currently I have two individual cylinders each as a rad file. Then I have a scene file that xforms these into a ~16,000 unit array. That file is then rotated and transformed onto the building by an additional scene file, which is then called by oconv by a "rad" like script.

It works, but it takes a very long time to oconv (I guess b/c it has to run xform 16000 times and Radiance on Cygwin is very slow at this based on benchmark results) and so far I have been unable to create an actual rendering for some reason.

What other options might work for something like this? I've thought about using a mix of void and metal similar to Georg Mischler's perforated metal technique. Would this be more efficient?

My only concern about a flat plane is that you would not get the same "cut off" as the 3D grid. However, given the small scale of the grid to the large scale of the building, this is perhaps negligible.

Greg, thanks for the link.. Never actually used a BRTDfunc so I will have to look at that more closely.

Anyway, I went ahead tried to put a couple of cal files together since only one of our computers could handle the 3D grid despite my efforts, and got lucky with this one. It seems to work great even though I'm not completely sure what the mod function is really doing.

Thanks for responding.

Mark de la Fuente

grid.cal

{
The cal file for a "wire" mesh consisting of vertical cables holding up horizontal rods.
This file could really be used to make any pladlike combination of two materials.
The file is written around vertical surfaces. If a horizontal grid or some other orientation is desired, xform the material or modify the cal file.

A1 = Width of vertical members
A2 = Vertical member on center spacing
A3 = Horizontal member
A4 = Horizontal member on center spacing

An example of how this would be used to cut rectangular holes out of a wall:

void plastic wall
0
0
5 .5 .5 .5 0 0

void mixfunc grid_wallx
4 void wall grid_x grid.cal
0
4 .1 .5 .05 1

grid_wallx polygon box.1540
0
0
12 ...

}

grid_x = if( f_grid_x, 1, 0 );
grid_y = if( f_grid_y, 1, 0 );

f_grid_x = and( grid_vert, grid_horiz(Px) ) ;
f_grid_y = and( grid_vert, grid_horiz(Py) ) ;

grid_vert = mod(Pz,A2) - A1 ;
grid_horiz(rod) = mod(rod,A4) - A3;

···

------------------------------

Message: 2
Date: Sat, 18 Jun 2005 09:13:45 -0700
From: "Gregory J. Ward" <gregoryjward@gmail.com>
Subject: Re: [Radiance-general] Modeling Challenge
Message-ID: <58DC6471-8DB7-4F34-B9A6-8B31647D7501@gmail.com>
Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed

Hi Mark,

There is a file called grating.cal that models depth of 3-D grids and
uses a BRTDfunc type to approximate the ensemble behavior. I posted
it in response to a similar request from Richard Clibborn: