这是我和同学一起做的东东
前面说了由于是刚刚学习的所以很多东西很恼火,都得现学
只有一个礼拜的时间
虽然已经结束好久了
前阶段有点忙
所以就没写上来,现在把程序的代码搞上来吧,我负责的是场景的建立我同学负责的是动画的设置,东西是很简单,不过使我们一点点学来的,希望高手不要见笑。
我把画球的放在这个里面了
public BranchGroup createSceneGraph() {
float y = (float) (0.8f - Math.sqrt(0.8f * 0.8f - x1 * x1));
BranchGroup objRoot = new BranchGroup();
//3.定义一个定向光
BoundingSphere bounds = new BoundingSphere(new Point3d(0.0, 0.0, 0.0), 400.0);
DirectionalLight LB = new DirectionalLight();
LB.setInfluencingBounds(bounds);
objRoot.addChild(LB);
//4.定义一个坐标系trans,将小球object添加到该坐标系中
Transform3D TG0 = new Transform3D();
TG0.setTranslation(new Vector3f(x1, y, 0f)); //设定小球坐标
TransformGroup trans = new TransformGroup(TG0);
trans.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
trans.setCapability(TransformGroup.ALLOW_TRANSFORM_READ);
objRoot.addChild(trans);
Sphere object = new Sphere(0.2f);
trans.addChild(object);
return objRoot;
}
下面的这个是画线的
public static TransformGroup pendulumLine(float x) { float y; y = -(float) Math.sqrt(0.8 * 0.8 - x * x); float vert[] = { x, y, 0.0f, 0.0f, 0.0f, 0.0f }; float color[] = { 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f }; Transform3D TG1 = new Transform3D(); TG1.setTranslation(new Vector3f(0.0f, 0.8f, 0f)); TransformGroup trans1 = new TransformGroup(TG1); LineArray line = new LineArray(2, LineArray.COORDINATES | LineArray.COLOR_3); line.setCoordinate(0, vert); line.setColor(0, color); LineAttributes pa = new LineAttributes(); pa.setLineWidth(2.5f); pa.setLineAntialiasingEnable(true); pa.setLinePattern(LineAttributes.PATTERN_SOLID); Appearance app = new Appearance(); app.setLineAttributes(pa); Shape3D shape = new Shape3D(); shape.setGeometry(line); // trans1.addChild(shape); shape.setAppearance(app); return trans1; }
我把画球的和画线的放在了两个坐标系里,使得球的坐标和线的底端坐标一样,这样看起来就是一个单摆了,然后通过坐标公式的计算,使得给定一个x值,球和线都能到指定的位置,用了几何的计算,但是我没有实现能让它成为一个动画进行摆动,这个给同学做的,但是做到最后也没弄出来,完全是按照书上的一些东西写的,我们感觉没问题了,但是不知道为什么会这样,所以只能做到这里了,不过检查的时候,虽然没做完,老师还是给我们很大的肯定,也无所谓了,总之通过这次课程设计,学到了很多的东西,这就够了。
这是上上周的事情了,由于最近有点忙,所以就没写,这周又有设计了,是数据库的,我们是组队参加的,做的是一个奥运志愿者的网站,用的是php+mysql,不过这个东东基本都是我们组里一个人写的,他很擅长php,我还差的远呢,所以得好好学了,这个暑假经过同学那里想去红岩网校学习下,觉得自己的基础差很多。
大四要毕业了,我们现在大二,我还准备考研,在大学的时间其实过的很快,看着学长们渐渐的都走了,心里难免也想的很多,确实要好好的充实自己啊,作为计算机的要加油啊。下学期不再学生会干了,我的科协工作也算是告一段落了,我的好朋友——和我一起干科协的会长出国了,祝愿他在美国能一帆风顺,我们共同的老大还有8天就走了,去腾讯了,我觉得那里的工作环境更加的人性化,很好的一份工作也祝他事业有成,然后就是我了,最近忙着复习,也不怎么玩游戏了,要潜下心来好好复习了,下学期没什么学生工作了,得好好学习专业知识,做好挑战杯,做好自己的事情。希望所有的朋友都能平平安安的,充实自己的大学生活,珍惜每一天。