问题描述
|
显然,我的JDK版本未包含J3D API。我已经从Java 3D Downloads下载了它的源代码:Release Builds — Java.net
我将\“ vectormath \”和\“ j3d \”文件夹都复制到我的\“ org \”文件夹中,并将所有的
package javax.media.j3d
更改为package org.j3d
...
我的Eclipse IDE版本(Helios)给我错误:
类型Transform3D的方法transform(Point3d,Point4d)引用缺少的Point3d类型
transform(direction,xformDirection);
!
相同的问题在很多地方弹出,但使用不同的方法除外。
解决方法
Point3d
应指javax.vecmath.Point3d
。那个特定的类可以在ѭ5中找到。您的项目中是否包含那个jar?如果需要的话,一个可能的地方是http://mirrors.ibiblio.org/pub/mirrors/maven/java3d/jars/vecmath-1.3.1.jar。
编辑
好吧,我去那里玩了一些。请尝试以下步骤:
访问您推荐的网站
选择适合您的系统架构的安装程序
运行安装程序
打开您的Eclipse项目
在Java Build Path属性下添加外部jar。转到安装Java3D的目录。选择所有3个jar文件。
您的代码现在应该可以了。这是一个对我有用的代码示例(它什么也不做,但是证明我仍然没有错误)。 Point3d
被正确识别。
package main;
import javax.media.j3d.Transform3D;
import javax.vecmath.Point3d;
public class Sneeze {
public void test() {
Point3d p3 = new Point3d(7,4,2);
Transform3D t = new Transform3D();
t.transform(p3);
}
}
我看到的唯一问题是您没有安装Java3D的权限,还是选择不安装它。但是,如果您不想安装,请尝试下载二进制文件并遵循类似的步骤。希望我们这次明白了:)