Now I got you! Well then he needs a different approach . What about
Face drawing API. I have seen some good examples on drawing irregular
face shapes in Rob's book
Sent from my iPhone
On Jun 29, 2010, at 7:09 PM, savagelook <[email protected]>
wrote:
Michael, thats what the code I pointed him to does, but if I am
understanding correctly, he wants the face to be a quad and not a
triangle. Like I mentioned, lite does this automatically when
possible, but I don't know how to do it in 2.x/3.x. I'm guessing
there's some way to determine the 4th vertex that makes a quad from a
3 vertex face with the Mesh.vertices collection in conjunction with
the face index, but I'm just guessing.
On Jun 29, 4:30 am, Michael Iv <[email protected]> wrote:
I don't have the a ready code but you should do it this way:
Each face has 3 vertices.Each vertex has a position vector
number3D.You take
these 3 vertices positions and find their average so that to have
the new
position in the middle of the face.Now you want the cube to be at
some
distance from the face.Here comes the magnitude=length of the
vectors.
Multiply each component of the average position vector by some
factor that
you should figure out for yourself for needed distance.Or use
Number3D.scale() function that does just the same.And you will have
you
object at a distance opposite the wanted face. Normals approach is
the same
but you dont need to calc vertices average or something like that
as normal
is already positioned in the middle of the face and is Number3D by
itself.
Hope it helps
Cheers
On Tue, Jun 29, 2010 at 11:11 AM, Fred <[email protected]>
wrote:
because i'm not able to do it ;-)
i'm a little bit confused with normals, can you leave me an
example to
show me the way ?
thanks.
On 29 juin, 00:07, Michael Iv <[email protected]> wrote:
Why don't you use face normals or face vertices to calc the coords.
Then use vector scalar multiplication in order to position you
object
some distance from the given face
Sent from my iPhone
On Jun 28, 2010, at 11:34 PM, savagelook
<[email protected]> wrote:
honestly, im not sure how to do that in away3d. away3dlite on the
other hand draws quads when possible and its really easy. Maybe
someone else with deeper knowledge of how the primitives are
drawn can
help.
On Jun 28, 3:58 pm, Fred <[email protected]> wrote:
ok, thanks for the demo !
but i need to create a cube that equals to 2 triangles, so i
need to
know which are the two triangles for creating a corresponding
cube in
front of this 2 triangles ?
On 28 juin, 19:12, savagelook <[email protected]>
wrote:
Here's an excerpt from some code I did that picks faces on an
object:
private function onMouseDown(event:MouseEvent3D):void {
var sphere:Sphere = event.target as Sphere;
if (event.drawpri is DrawTriangle) {
var face:Face = (event.drawpri as
DrawTriangle).faceVO.face as Face;
/* Your code using the face */
}
}
Once you have the face object from your click event, you can
use its
attributes to determine the size and location of the cube you
want
to
create. You'll likely want to position and align your cube
along
the
normal of the selected face.
You can see the full code here:http://savagelook.com/demos/
face_picking/sandbox.html
(right click on the view to view source)
On Jun 28, 12:47 pm, Fred <[email protected]> wrote:
Hi,
I'm trying to create an app where the user can add a cube after
cliking on an object.
(This object is coming from a 3ds model, it's a cube but i
need it
comes from 3ds.)
Today, i can detect the click on an object and create the
cube at
the
point clicked (using the mouse3dEvent infos).
But now i need to create a cube with the same size than the
face
clicked and i don't find a simple way to do it .
Any help is welcome !
thanks.
Fred
--
Michael Ivanov ,Programmer
Neurotech Solutions Ltd.
Flex|Air |3D|Unity|www.neurotechresearch.comhttp://
blog.alladvanced.nethttp://www.meetup.com/GO3D-Games-Opensource-3D/
Tel:054-4962254
[email protected]
[email protected]