Has anybody come across a C implementation of Hanrahan's

closed-form expression for the form-factor between two

polygons?

Simon Gibson

(University of Manchester)

Has anybody come across a C implementation of Hanrahan's

closed-form expression for the form-factor between two

polygons?

Simon Gibson

(University of Manchester)

> Has anybody come across a C implementation of Hanrahan's

> closed-form expression for the form-factor between two

> polygons?

> Simon Gibson

> (University of Manchester)

--

http://www.graphics.cornell.edu/~bwade/

>> Has anybody come across a C implementation of Hanrahan's

>> closed-form expression for the form-factor between two

>> polygons?

>> Simon Gibson

>> (University of Manchester)

>Not likely

via the Princeton Graphics Group Web pages. The C library is at:

http://www.cs.princeton.edu/gfx/papers/formfactor/libff.tar.Z

(It was actually Peter Schr\"oder and Pat Hanrahan who found this

closed-form solution.)

Also, note that this stuff won't be at Princeton forever, though it should

also be available via the Stanford Graphics Group Web pages

(http://www-graphics.stanford.edu) in the near future...

-matt

---

http://www-graphics.stanford.edu/~pharr

|>

|> Au contraire. Both a C implementation and Mathematica code are available

|> via the Princeton Graphics Group Web pages. The C library is at:

|>

|> http://www.cs.princeton.edu/gfx/papers/formfactor/libff.tar.Z

For FTP, it is at ftp.cs.princton.edu in the

/pub/packages/formfactor directory, with files ff.m, ffpaper.ps, fftr.ps,

and libff.tr, all compressed (.Z) files. About 440K altogether.

Randy

--

>Has anybody come across a C implementation of Hanrahan's

>closed-form expression for the form-factor between two

>polygons?

it's very very very slow and that's without the perspective

clipping that the polygons need to go through for *every*

patch. Avoid it. It was a piece of showing off - solving a

mathematical problem that had been around for 100 years or so.

The only advantage you'll get by using this generalised method

is when you have patches sharing an edge, and there's a solution

for that for square patches anyway.

And you'll be using only linear reconstruction functions (Gouraud

shading) so any accuracy you win in using the general method is

lost in the rendering. Accurate enough is accurate enough.

Has anyone used quadratic basis functions usefully yet?

- Robin Green.

--

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

Electronic Arts Ltd. EAUK EA don't have any opinions

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

>>closed-form expression for the form-factor...

>Man, you gotta be joking! This method is general, it's correct but

>it's very very very slow and that's without the perspective

>clipping that the polygons need to go through for *every* patch.

>The only advantage you'll get by using this generalised method

>is when you have patches sharing an edge, and there's a solution

>for that for square patches anyway.

>And you'll be using only linear reconstruction functions (Gouraud

>shading) so any accuracy you win in using the general method is

>lost in the rendering. Accurate enough is accurate enough.

>- Robin Green.

true, the exact answer is useful only for piecewise-constant

bases. but in contact cases, it's indispensable -- and

these happen often, and for more than axial rectangles,

contrary to your statement.

yes, quadratic basis functions have found more use recently...

in my opinion they're necessary and sufficient for representing

all but the most perverse radiosity solutions efficiently and

accurately.

seth.

--

MIT Lab for CS, NE43-208 tel 617 258 7885

545 Technology Square fax 617 253 6652

Cambridge, MA 02139 http://theory.lcs.mit.edu/~seth/

1. Radiosity and Form Factor evaluation question ??

This question is concerned with the Form Factor evaluation within the

Radiosity algorithm. I'm have some conceptual difficulty marrying both

the Nusselt Analog approach and a more instinctive approach. Basically I'm

sure it is my instinct that is way out... Could somebody correct my logic

here:

Consider the form factor from an area A_i to area A_j. The form factor

from differential area dA_i to differential area dA_j is given by:

dF_(di-dj) = cos(Theta_i) * cos(Theta_j) * H_ij dA_j

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

PI*r^2

r: lenght of vector from centre of dA_i to dA_j

Theta_i: angle between Normal to dA_i and the vector between patches

Theta_j: angle between Normal to dA_j and the vector between patches

H_ij: occlusion function/factor.

Conceptually, I have been trying to break this down and have supposed the

following:

cos(Theta_i) and cos(Theta_j) account for the energy fall-off

due to the cosine of the angles,... fine.

H_ij, being the occlusion factor is obvious in its function.

r^2 accounts for the relationship between energy and the inv/square

law

Finally PI is related to the Solid angle subtended by dA_j as seen

from dA_i. This is where my problem arrises...

I would have thought that it should be divided by 2*PI rather than PI, given

that the area of the hemi-sphere centred at dA_i is 2*PI*r^2, given that r = 1,

then the factor reduces to 2*PI. Where does the factor 2 disappear. I've

struggled with this and realise that I may be approaching it from an

incorrect point of view. Can somebody clarify this...

steve

--

+-------------------------------------+------------------------------------

| Hitachi Central Research Lab. Tokyo | ph: (0423)-23-1111 fax: (0423) 27-7742 |

+-------------------------------------+------------------------------------

2. (graphical components moving around w/o my permission :))

3. Radiosity algorithms (pseudocode or code) especially Form Factors

5. Form Factor for arbitrary disks

6. Excel Graphs into Pagemaker then to Print in Color?

9. Computing form factor in radiosoty

11. Form factor calculations for radiosity

13. Radiosity form factor calculation ?

6 post • Page:**1** of **1**