我用rajawali框架加载了一个对象…我想用相机协调旋转它。。
这是我的代码:
public Renderer(Context context) {
super(context);
setFrameRate(60);
this.context = context;
mSensorManager = (SensorManager) context.getSystemService(Context.SENSOR_SERVICE);
mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
mAccVals = new Number3d();
}
public void initScene() {
DirectionalLight light = new DirectionalLight(0, 0, 1);
light.setPower(4);
mCamera = new Camera();
LoaderOBJ objParser = new LoaderOBJ(mContext.getResources(), mTextureManager, R.raw.ship_obj);
try {
objParser.parse();
} catch (ParsingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
mObjectGroup = objParser.getParsedObject();
mObjectGroup.setPosition(0, 0, 0);
mCamera.setPosition(10, 50, 150);
addCamera(mCamera);
addChild(mObjectGroup);
mSensorManager.registerListener(this, mAccelerometer, SensorManager.SENSOR_DELAY_UI);
}
public void onDrawFrame(GL10 glUnused) {
super.onDrawFrame(glUnused);
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
// TODO Auto-generated method stub
}
@Override
public void onSensorChanged(SensorEvent event) {
// TODO Auto-generated method stub
if (event.sensor.getType() != Sensor.TYPE_ACCELEROMETER)
return;
mAccVals.x = (float) (-event.values[1] * FILTERING_FACTOR + mAccVals.x
* (1.0 - FILTERING_FACTOR));
mAccVals.y = (float) (event.values[0] * FILTERING_FACTOR + mAccVals.y
* (1.0 - FILTERING_FACTOR));
double posx = mAccVals.x * .2f;
double posy = mAccVals.y * .2f;
mCamera.setPosition(posx, posy, 0);
double currentPosx = mCamera.getPosition().x;
double currentPosy = mCamera.getPosition().y;
mCamera.setLookAt(currentPosx, currentPosy, 0);
}
这是我的课:
public class Renderer extends RajawaliRenderer implements SensorEventListener {
}
我在SensorChanged(传感器更改)中接收数字posx和posy。setPosition(posx,posy,0)不起作用!
我更改了这些:
mCamera.setPosition(posx, posy, 0);
到=
getCurrentCamera().setRotation(posx, posy, 0);
mCamera.setLookAt(currentPosx, currentPosy, 0);
到=
getCurrentCamera().setLookAt(currentPosx, currentPosy, 0);
而且
mCamera.setPosition(10, 50, 150); to => mCamera.setPosition(0, 0, 0);
现在它工作了!
我正在尝试围绕我的模型旋转我的透视相机。模型位于中心(0,0,0)点。这是我的旋转相机方法: 我试着去中心,旋转5度,然后回到同样的距离。然而,旋转似乎不起作用,我不知道为什么,任何帮助都非常感谢。
OpenGL总是围绕(0,0,0)旋转。但是我需要绕着相机旋转。我知道在GL中,没有相机,但是如果我翻译回(0,0,-6.0),它会绕着(0,0,0)旋转,而不是绕着(0,0,-6.0)旋转 所以我的问题是:如何在opengl和c中设置旋转中心 我已经找到了这篇文章:OpenGL围绕一个点旋转相机 显示此解决方案的地方: 旋转函数通常围绕原点旋转。要围绕另一个点P旋转,必须:平移(-P)旋转平移(
在我的应用程序中,用户从相机捕获图像或从图库中选择图像,然后将其转换为pdf并上载到服务器,现在我的问题是,从相机捕获的图像在某些设备上旋转,我有代码尝试解决此问题,但它不起作用 任何建议或问题在哪里,没有错误代码或任何东西
使用摄影机 安装PSP™专用的摄影机(选购品)后,可拍摄静止图像或影像。 若要使用此机能,需先准备另售的周边机器。有关周边机器的详情,请参阅各区域的官方网站。 您使用的PSP™ 必要的周边机器 PSP-1000/2000/3000系列 摄影机(PSP™主机专用) Memory Stick™ PSP-N1000系列 摄影机(PSP™主机专用) 转接线转换器 部分区域可能并未贩卖摄影机。 拍摄图像或影
问题内容: 我有一个方法需要旋转,将其存储在新变量中,然后返回new 。这是我的尝试,图像似乎为空或什么。它只是不显示在屏幕上: 当我取出图像时,在屏幕上绘制的图像就很好,没有问题,但是当然没有旋转。 问题答案: 因此,基于此答案中的示例,您应该能够设计一种旋转方法,该方法可以将源图像旋转给定的度数,例如…
我有一个方法,它需要旋转,将其存储在一个新变量中,然后返回新的。这是我的尝试,图像似乎是空的什么的。它只是不显示在屏幕上: 当我取出时,图像在屏幕上绘制得很好,没有任何问题,但当然没有旋转。