- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我刚刚开始学习 ARKitexample 和 Scenekit。我读了一些Scenekit,发现为了添加文本,我需要使用SCNText。
我尝试这样写,但没有显示。
guard let pointOfView = sceneView.pointOfView else { return }
let text = SCNText(string: "Hello", extrusionDepth: 4)
let textNode = SCNNode(geometry: text)
textNode.geometry = text
textNode.position = SCNVector3Make(pointOfView.position.x, pointOfView.position.y, pointOfView.position.z)
sceneView.scene.rootNode.addChildNode(textNode)
我只想在用户按下按钮时在 SCNScene 上添加一些文本(例如“hello world”)。
编辑
我看到了该文本,但由于我尚未设置平面(或 anchor ),因此我无法像在该文本前面一样查看该文本。我能怎么做?
最佳答案
这里至少有两个问题。
<小时/>如果您将节点的位置设置为与相机的位置相匹配,您可能不会看到该节点的任何内容。您希望将事物放置在相机前面以便可以看到它们。相机总是朝其局部空间的 -z 方向看。有很多方法可以进行必要的数学计算,但这里有一种可能很方便(在手机上编码,所以 YMMV):
textNode.simdPosition = pointOfView.simdPosition + pointOfView.simdWorldFront * 0.5
这应该将你的物体放在相机前面半米处(或者更确切地说,相机当时所在的位置 - 它不会跟随相机)。它有效是因为 simdWorldFront
是向量(0,0,-1),在局部空间中表示相机节点指向的方向,从局部空间转换到世界空间。
SCNText
的默认字体大小约为 16。但这是以场景单位为单位的,而场景单位在 ARKit 中映射为米。此外,“文本框”固定在其左下角。因此,您的文本很可能不可见,因为它高 16 米,位于您的右侧。
关于scenekit - 使用 ARKit 将 SCNText 添加到 SCNScene,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44733842/
在陈述我的问题之前,我想澄清一下,我的问题有多个答案,不幸的是,没有一个能解决我的问题。请不要将其标记为重复项。 现在这是我必须创建文本节点的代码 let textNode: SCNNode = {
我的 SceneKit 应用程序中有以下代码,但出于某种原因,文本从未显示在屏幕上。 let text = SCNText(string: item.label, extrusionDepth: 4
我正在读取陀螺仪并将 SCNText 几何图形的字符串更改为陀螺仪的偏航值。更改发生在每 1/30 秒调用一次的陀螺仪处理程序内部。 SCNText 几何体是使用 Interface Builder
我正在尝试使用以下代码设置字体大小: func setupText(){ let text = SCNText(string: "textString", extrusionDepth: 4
如何计算SCNText中心与其左边缘角和右边缘角之间的距离。 例如,使用下面的代码,如果单词是“texas”,则字母“x”的中间将是枢轴点,因为它位于单词的中间。我如何获得字母“t”左侧和字母“x”之
我想在 SceneKit 场景中显示一些文本,其中字符具有不同的颜色。 documentation of SCNText状态: When you create a text geometry from
我可以在 AR 环境中显示 SCNText,但是当我尝试将文本包装在固定宽度和高度的容器中时,而不是以多行显示它会重叠。 let text = SCNText(string: ktext, extru
我有一个在 AR 应用程序中显示的 SCNText,但我希望某些词具有不同的颜色。 我已尝试执行以下操作: How to change colour of the certain words in l
如何向 SCNtext 插入背景(例如“对话泡泡”或矩形)?具体来说,如果我将“Hello World”作为 SCNText 插入(然后显然作为场景中的 SCNNode),那么我如何才能仅为该文本添加
为什么这些代码行有效: let text = NSString(string: "Test") (node.geometry as! SCNText).string = text 但这些没有: let
我没有得到如何从 SCNText 获取浮点值。如果我打印 SCNText.string,我可以在 SCNText 中看到字符串。现在我想要 SCNText 具有按字符流动的浮点值,我的要求是从中提取浮
当我运行这段 SceneKit 代码时: let txt = SCNText(string: "Hello", extrusionDepth: 0.2) let textNode = SCNNode(
我试过右对齐,但还是左对齐。 let txt = SCNText(string: "TEST", extrusionDepth: 10) txt.chamferRadius = 5 //0
我已经设法将一个立方体 (SCNNode) 放置在相机指向的表面上,但是我发现很难完成将文本也放置在相同位置的简单(?)任务。 我已经创建了 SCNText 和后续的 SCNNode,但是当我将它添加
如何设置 SCNText 对象的纹理?这就是我所拥有的,外观没有任何变化: // myNode is a working SCNText element let mat = SCNMaterial()
我一直在寻找使用 arkit 显示一些文本的方法。为此,我创建了一个 SCNText 对象,为其指定字体大小并按比例缩小。这似乎是调节其大小的推荐方法。 现在为了定位,我需要计算 SCNText 对象
我有一个 SCNText 元素: print(NodeElement?.geometry?) // output `Optional( )` 但是,当我这样做时: print(self.editing
我在 AR 屏幕上显示了一个 SCNText 节点。我正在尝试使用 SCNAction 属性为其设置动画。但它不能正常工作。有没有其他方法可以使节点动画化? 此外,如果我想插入图像来代替文本,我应该怎
我正在尝试创建一个具有多个 SCNText 和 SCNPlane 的 AR 应用程序。我正在尝试将每个 SCNText 放在 SCNPlane 中,但是因为这 figure显示,文本总是在平面之外。
我想在 ARSCNView 中的 SCNText 周围添加一个 SCNPlane。因此,我需要使用 SCNText 创建的文本的 textSize,例如: 正如您从图像中看到的那样,有一个错误表明 S
我是一名优秀的程序员,十分优秀!