Using a common flash 3d library such as Papervision3d or away3d & as3dmod 开发者_JAVA技巧or better create a Flash 3d object manipulator that:
- Loads a complex 3d object (for example a pottery item)
- Allows a user to rotate the object
- Allows a user to grab vertices with the mouse and stretch them like so:
- Drag on x-axis(symmetrical - changes affect a given points area across that points entire section - i.e. to widen a pot)
- Drag on x-axis(non-symmetrical - changes affect a given points area, but local to that area only - i.e. when rotating you can see a bulge or a indent)
- Drag on y-axis(symmetrical - changes affect a given points area across that points entire section - i.e. to make a pot taller from the given point)
- Drag on y-axis(non-symmetrical - changes affect a given points area, but local to that area only - i.e. to make a pot taller but in a skewed way...like the leaning tower of piza or something)
- Drag on x & y axis (symmetrical - to resize basically)
- Drag on x & y axis (non-symmetrical - this would be the pliable version of the transform, where whatever the user does affects the local area in a set way - i.e. to really mangle a pot, or if your skilled make it real nice)
- Finally Allows a user to capture & download a picture of said object after manipulation
Bullet points 1 and 2 are easy (or at least, very possible with little effort.) For 1, just make sure you are using a file type for which the 3d engine has a corresponding file parser. For example, both PV3D and away3d support 3ds files.
Bullet point 4 is easy as well. You can use adobe's as3corelib image classes to generate a JPG or PNG in flash and do with it what you want from there.
Bullet point 3 is, as @alecmce said, pretty hard. I have used both PV3D and away3d quite a bit but I have never had the need to attempt what you are talking about here. For that I am thankful because I have a hard time following some of the math used in 3d rendering engine, let alone a 3d polygon manipulation tool. Eeek.
精彩评论