flash 3d flash3d 研究所 pv3d 共享资源  | 经典范例  | 视频教程  | 友情链接  | 联系我们
登陆 | 注册  flash 3d 研究所
讨论区





最近更新:
● ck47阁下在讨论区里 发表新主题“新手问题...”(07:49:50)
● 无语瓶阁下在教程区里 回复“《超简易papervision3D基础 ...”(18:09:44)
● payday loan阁下在教程区里 回复“《pv3d, sandy, away3d...”(05:56:23)
浏览主题:鼠标控制-三维坐标系和六个立方体360旋转-请教各位大师

鼠标控制-三维坐标系和六个立方体360旋转-请教各位大师
jediss (2009-07-24 15:11:47)

请教各位大师,该如何把下面的图片效果做成flash,用pv3d该怎么实现,有没有大师给些指点~~
小女子谢谢各位大师~~



flash 3d 研究所 xiaoyanggao
(2009-07-24 15:38:28)
我讲讲我的看法,首先立方体可以用PV3D自带的Cube模型创建,调整长宽高及XYZ坐标可以移动到如图所示位置,九宫格的平面可以用Plane模型创建,然后用相应的贴图上材质,至于三根坐标线我倒是没研究过,可以看看别的办法

flash 3d 研究所 jediss
(2009-07-24 15:53:27)
点线面体算是全了,不仅有三根坐标线,坐标0点还有一个点,随着输入xyz值而变动位置,实在不知如何是好了~请各位大师再多给些提示好不。。。

flash 3d 研究所 DDM君
(2009-07-24 17:37:48)
我们讨论区终于有3名女性了~泪流满面,不容易啊。

坐标0这个点用一个小的plane,然后
plane.lookAt(摄像机) 就可以了

三根线可以用core包的geom包里面的line3d
构造是这个方法
Lines3D(material:LineMaterial, name:String=null)

画线是用方法
addNewLine(size:Number, x0:Number, y0:Number, z0:Number, x1:Number, y1:Number, z1:Number) : Line3D

ps:小羊羔君真是天赋异禀啊,这么几天就精通flash3d了~~好样儿的。

flash 3d 研究所 xiaoyanggao
(2009-07-24 18:02:20)
我哪有这么强啊,完全是被逼出来的,项目那里在催,只有日以继夜的赶进度咯,我以前都用AS2.0很少用AS3.0的,为了这个项目顺便把AS3.0的原理也学了,还好有这个论坛提供一切源代码,学的过程有目的性,不过现在为止还是很片面,概念不是很清楚,以后要慢慢品味,希望教程再多点,最好有什么简易游戏教程什么的,呵呵

flash 3d 研究所 DDM君
(2009-07-25 10:32:03)
看来压力是一种动力啊,哈哈哈。AS3熟悉以后就会爱上的,结构要有道理的多。
只要原理理解到所有引擎代码能自己看懂,就可以慢慢修炼了,呵呵

flash 3d 研究所 jediss
(2009-08-02 17:52:50)
大师哥哥~~还记得我吗?加上感冒了几天,
俺照着方法,做了好多天,怎么也都做不好,只显示一条z轴的线,不知该如何是好,能再指点下错误好吗?

线的代码如下:
                 var defaultMaterial:LineMaterial = new LineMaterial(0xFFFFFF);
                 var axes:Lines3D = new Lines3D(defaultMaterial);
                 
                 var xAxisMaterial:LineMaterial = new LineMaterial(0xFF0000);
                 var yAxisMaterial:LineMaterial = new LineMaterial(0x00FF00);
                 var zAxisMaterial:LineMaterial = new LineMaterial(0x0000FF);
                 
                 var xAxisorigin:Vertex3D = new Vertex3D(0, 0, 200);
                 var yAxisorigin:Vertex3D = new Vertex3D(0, 200, 0);
                 var zAxisorigin:Vertex3D = new Vertex3D(200, 0, 0);
                 
                 
                 var xAxis:Line3D = new Line3D(axes, xAxisMaterial, 2, xAxisorigin, new Vertex3D(200, 0, 0));
                 var yAxis:Line3D = new Line3D(axes, yAxisMaterial, 2, yAxisorigin, new Vertex3D(0, 200, 0));
                 var zAxis:Line3D = new Line3D(axes, zAxisMaterial, 2, zAxisorigin, new Vertex3D(0, 0, 200));
                 
                 axes.addLine(xAxis);
                 axes.addLine(yAxis);
                 axes.addLine(zAxis);
                 
                 scene.addChild(axes);


flash 3d 研究所 jediss
(2009-08-02 18:02:06)


flash 3d 研究所 jediss
(2009-08-02 18:14:13)
还有下面的也不对:请求指点

           private function createLines():void {
                 var lines = new Lines3D();
                 var lines.addNewLine(2, 0, 0, 0, 200, 0, 0);
                 var scene.addChild(lines);
                 var lineMaterial = new LineMaterial(0xffffff);
           }







flash 3d 研究所
(2009-08-02 19:56:45)
我正在做一个3维的 数据图表,和上面的图片有点类似,明天可以我把代码贴上来,没准对你有帮助。

flash 3d 研究所 jediss
(2009-08-02 20:50:58)
不管怎样,都先谢谢了,十分感谢,我都做了好几天了也没做出来,笨死我了,先谢了~~

flash 3d 研究所 hiddenshark
(2009-08-02 21:24:33)
楼主能提供下图片么?
我现在就找这种6面图的。

flash 3d 研究所 jediss
(2009-08-02 22:29:46)
你要什么六面图的图片,我发给你

flash 3d 研究所 hiddenshark
(2009-08-03 08:39:43)
就是上下左右前后能组成一个场景的图。
我做了个这个东西,可是没有合适的图。
http://www.wwcctt.com/flash/360-2

flash 3d 研究所 hiddenshark
(2009-08-03 08:40:08)
忘记了,我邮箱:hiddenshark2008@hotmail.com

flash 3d 研究所 jediss
(2009-08-03 08:54:36)
得和您解释下,不过上面图片是软件界面的截图,并不是什么烘焙出来的完整的贴图哦,那个我也不会哦,以上效果图片的flash 我还有很多问题,没做好~~

flash 3d 研究所 DDM君
(2009-08-03 11:50:17)
jediss真可怜啊,都看代码看到病了,严重理解=___=

您说只显示Z线,一般就是因为没有深度复制的对象,被重复声明了,所以刚好只剩最后一个声明的z。 可以通过把y或x,放在最后,来证明是不是最后一条线变成了x或y

试试这三句,不要都用axes做instance,再声明三个lines3d来做instance。

var xAxis:Line3D = new Line3D(axes, xAxisMaterial, 2, xAxisorigin, new Vertex3D(200, 0, 0));
    var yAxis:Line3D = new Line3D(axes, yAxisMaterial, 2, yAxisorigin, new Vertex3D(0, 200, 0));
    var zAxis:Line3D = new Line3D(axes, zAxisMaterial, 2, zAxisorigin, new Vertex3D(0, 0, 200));





flash 3d 研究所 jediss
(2009-08-03 13:18:46)
请问,DDM君 大师哥哥们:
以下(界面02)图片效果,flash可以做出 输入 不同xyz值 创建 不同的点 ,然后N个点连接形成线吗?
界面02


flash 3d 研究所 DDM君
(2009-08-03 13:24:36)
可以的呀,只要把后一条线的起点 和 前一条线的终点 的xyz相同就可以了嘛 呵呵
用addline


flash 3d 研究所 jediss
(2009-08-03 13:29:01)
谢谢 DDM君的关心 百忙之中的指导~我再试试

flash 3d 研究所 jediss
(2009-08-03 13:31:54)
我怕浪费您时间,我先尽量把您的帖子都去看看,尽量看完,我再发我的小弱弱问题~~

flash 3d 研究所 hiddenshark
(2009-08-03 16:38:15)
……

那还是算了吧。
我以为是用照相机在中心点拍的6张照片呢。

flash 3d 研究所
(2009-08-03 23:25:09)
代码贴上来,看看对你有帮助吗?
var lineMa1:LineMaterial = new LineMaterial(0xff00ff);
                 
                 var lines:Lines3D = new Lines3D(lineMa1);
                 
                 var line:Line3D = new Line3D(lines,lineMa1,5,new Vertex3D(0,0,0),new Vertex3D(500,0,0));
                 
                 var line1:Line3D = new Line3D(lines,lineMa1,5,new Vertex3D(0,0,0),new Vertex3D(0,500,0));
                 
                 var line2:Line3D = new Line3D(lines,lineMa1,5,new Vertex3D(0,0,0),new Vertex3D(250,250,100));
                 
                 lines.addLine(line);
                 lines.addLine(line1);
                 lines.addLine(line2);
                 
                 scene.addChild(lines);

flash 3d 研究所 jediss
(2009-08-04 07:05:47)
如下:有好多问题,麻烦大师帮忙看下~


flash 3d 研究所 jediss
(2009-08-04 07:07:41)
显示不出来,还是看这个地址:
http://www.coolren.cn/jediss/


flash 3d 研究所 jediss
(2009-08-04 07:26:11)
目前问题: 请求DDM君 大师指导
1.坐标系不会一起转动,y轴和z轴怎么方向、位置都不对.
2.平面的哪个贴图是九宫格呢(不是带三角线框那种).
3.dae文件透明如何实现哦
4.图右,xyz怎么和左图互动呢.输入数值增加点.这个点是用plane,还是sphere.
5.怎么改变他们的坐标精确位置哦.
6...

flash 3d 研究所 DDM君
(2009-08-04 11:51:34)
1)要所有物体包括坐标的线都加入(addChild)到一个空的虚拟物体DisplayObject3D里面,然后完全操作这个虚拟物体。
2)九宫格用带有alpha通道的png图片也可以,用mc画线后作为MovieMaterial贴图也可以
3)dae透明必须其贴图为带有alpha通道的png图片。
4)没看懂您的意思,不知道这篇是不是您要的内容
http://www.flab3d.com/tutorial.php?top=t21quat
5)单个物体的位置吗?如果问题1的虚拟物体是没动过(0,0,0)的话,物体的位置相对于这个虚拟物体的位置。


flash 3d 研究所 jediss
(2009-08-04 12:34:35)
非常感谢 DDM君 有点明白了,我去继续努力~
还有以上问题4,具体情况如下图:
界面03

您看这样可以实现吗?

flash 3d 研究所 jediss
(2009-08-04 12:37:37)
打扰 DDM君 您中午休息的时间了,真的非常感谢能得到您的指导~~

flash 3d 研究所 jediss
(2009-08-06 13:58:43)
麻烦请问DDM君 ,如图界面03 ,flash 能做出来吗?

flash 3d 研究所 jediss
(2009-08-07 09:38:50)
DDM君可不可以有时间一定帮忙看看好不?以上图动画,可不可以用flash和pv3d来实现呢?我找不到相关方法,拜托求助DDM君...

flash 3d 研究所 DDM君
(2009-08-07 11:06:27)
普通的连线当然是没有问题,但动画过渡是个比较麻烦的事情。

虽然能完成,但比较复杂。要用到我们傻瓜包里面的Tween.as这个类的功能。但这个类比较复杂,一两句话也说不清楚,里面的注释倒是很详细,可以看看。

原理是这样:
通过输入两端的x,y,z到tween,然后让tween每帧反馈一个新的x,y,z点,每秒重新绘制line,根据A的x,yz到这个反馈回来的xyz,直到达到B点的xyz。

flash 3d 研究所 jediss
(2009-08-07 13:56:39)
哇~~谢谢DDM君,我去看看详细注释,看能明白吗。
先谢谢您了,恐怕否则我就得搬着小凳子去找您DDM君大人了,请您一定不要见怪哦,我一定要把这个任务完成才是啊~

flash 3d 研究所 DDM君
(2009-08-08 13:06:46)
呵呵,没事没事,加油。欢迎来杭州玩^_^

flash 3d 研究所 jediss
(2009-08-08 14:38:24)
郑州离得不近哦,呵呵。这题目已是上个月的事了,看着简单常用,自己却怎么也达不到要求。
Tween类边翻译边理解吧,哎,DDM君郑州有分站吗,呵呵...

flash 3d 研究所 jediss
(2009-08-09 16:16:31)
DDM君求助~~可不可以方便加下我QQ 331006872 Tween类实在没怎么看明白,能联系到您才好,可以吗?

flash 3d 研究所 jediss
(2009-08-10 12:29:57)
DDM君,有时间看到的话,可不可以加下QQ,可以吗?唉,还是关于以上求助问题的,不会占用您太多时间,可以吗?实在不方便的话,哪怕将您的联系方式发到我邮箱 331006872@qq.com也可以,谢谢了~

flash 3d 研究所 DDM君
(2009-08-11 10:45:09)
已经加您的q了^_^

评论人:
邮   箱: (填入邮箱,博客地址均可)

内   容: (广告和垃圾内容可能会被删除,望理解)
链接地址

验证码:(为防止机器人骚扰,请麻烦输入验证码^_^)
  

(目前需登陆方可发表)


不想添加了