gpt4 book ai didi

ios - 如何在 SceneKit iOS 中更改 3D 对象的高度宽度

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:18:29 25 4
gpt4 key购买 nike

我在我的移动应用程序中显示 3D(.obj 和 .STL)对象。为了显示 3D 对象,我使用了 SceneKit Framework。

-(void)spriteKitEx
{
sceneView = [[SCNView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height - 200)];
sceneView.playing = true ;
sceneView.allowsCameraControl = true ;
scene = [SCNScene sceneNamed:@"realship.obj"];

//Try to change color here using Scenlight
SCNLight *light =[[SCNLight alloc] init];
light.type = SCNLightTypeAmbient;
light.color = [UIColor redColor];

SCNNode *lightNode = [[SCNNode alloc] init];
lightNode.light = light ;
lightNode.scale = SCNVector3Make(1.0, 500.0, 2.0);
[scene.rootNode addChildNode:lightNode];
sceneView.scene = scene;
[sceneView setBackgroundColor: [UIColor redColor]];

[self.view addSubview:sceneView];
}

现在我的需求是根据用户手势改变3D对象的宽度和高度。

我已尝试在我的 SceneView 对象中执行此操作,但无法更改宽度和高度。

最佳答案

在 3D 场景中有两种方法可以做到这一点:

<强>1。使用相机,并更改变焦/镜头长度和/或移动它

变焦通常用镜头长度或视野来描述。较大的虚拟长度是放大,较小的是缩小。相反,较大的视野正在缩小,较小的视野正在放大。

移动是根据与拍摄对象的距离来转换相机位置的过程;它正在看的东西。物体越远越小,越近则越大。

<强>2。缩放对象

这很简单。但是对于一个手势来说似乎很奇怪,因为只有一个对象会出现变化。如果您正在制作 3D 编辑应用程序,这可能就是您想要的。否则,您可能想要移动和/或缩放相机。

关于ios - 如何在 SceneKit iOS 中更改 3D 对象的高度宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41443081/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com