Home Overview FAQ Documentation Download Mailing List Geomview For Windows? Support Users Development Bug Reporting Contributing Contact Us Sponsors
|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Closed REQ 5152]: Geomview questions
You could create a curve in Geomview using a VECT object, as in: VECT 1 50 0 # one polyline, total of 50 vertices, no colors 50 # 50 vertices in first polyline 0 # 0 colors in first polyline x1 y1 z1 x2 y2 z2 .. x50 y50 z50 # all the vertex positions [In a separate note you asked about Bezier curves; we haven't implemented any, only Bezier surfaces.] We don't have a way to specify a plane given a point and normal vector; you need to compute vertex coordinates, or a transformation from a standard plane, or etc. This isn't too hard to do, though. Suppose the plane's (unit) normal vector is n. You want to construct a set of basis vectors in which n becomes, say, the Z axis. Pick some vector, say u = [1 0 0], and choose its component orthogonal to n: u perp n = u - n * (u dot n) If this is zero, then pick a different u; otherwise, scale it to a unit vector and call it the new basis' X axis. Construct the Y axis from the vector cross product v = n cross u. Now, you can write an OOGL file: { INST transform { ux uy uz 0 vx vy vz 0 nx ny nz 0 px py pz 1 } geom < square.quad } where ux,uy,uz are the x,y,z components of vector u, and so on, and p is the point known to lie on the plane. This matrix maps the origin to p, and maps vectors [1 0 0] and [0 1 0] to vectors lying in the plane. Since square.quad is a unit square in the X-Y plane centered on the origin, the above object should be what you want.
|
||
Home | Overview | FAQ | Documentation | Support | Download | Mailing List Windows? | Development | Bug Reporting | Contributing | Contact Us | Sponsors |
|||
site hosted by |