Я хочу нарисовать оси как в SketchUp, которые бесконечно длинны. Я уже рисовал линии с фиксированной длиной, но я хочу бесконечно долго.Как нарисовать бесконечно длинную линию в SCENEKIT?
ответ
Поддельный это с линиями фиксированной длины, которые выходят из-за зрения камеры (так называемый усеченный) , через него, а затем за ним снова.
Вы можете создать начало и конец SCNNode
экземпляров для каждой оси. Затем каждый раз, когда камера меняет вид, звоните
func isNodeInsideFrustum(_ node: SCNNode,
withPointOfView pointOfView: SCNNode) -> Bool
на каждой из ваших 6 конечных точек. Если конечная точка находится внутри усеченного конуса, переместите ее дальше, пока она не станет.
Способы в протоколе SCNSceneRendererDelegate
могут быть вам полезны.
Очень благодарю вас. Это будет более полезно, если вы продемонстрируете реализацию вышеуказанной функции. –
В зависимости от того, что вы имеете в виду, вы проверяете, когда размер линии пересечет некоторую ось x или y на экране. Вы можете определить размер экрана, используя size.frame. Кроме того, вы можете использовать CGRectGetMidX, CGRectGetMidY и т.д.
Например, я хотел бы сделать что-то вроде этого:
var x = CGRectGetMaxX(self.frame)
//Where y is the max size of the line you have
if x <= y {
//Code where you make the line shape extend or add another line over it to make it look continous
}
- 1. SceneKit нарисовать изогнутую линию
- 2. Как создать бесконечно длинную строку
- 3. OpenCV - невозможно рисовать длинную линию
- 4. Как создать бесконечно длинную последовательность в Котлин
- 5. Как нарисовать бесконечную длинную прямую линию на определенный угол, несущий на карте google
- 6. Как нарисовать линию МОФ
- 7. Как нарисовать линию субпикселей
- 8. Как нарисовать такую линию?
- 9. Как нарисовать зубчатую линию?
- 10. Как нарисовать пунктирную линию?
- 11. Как нарисовать линию обновления
- 12. Как нарисовать линию в java?
- 13. Как нарисовать линию в VB.NET
- 14. Как нарисовать линию в диаграмме?
- 15. Как нарисовать линию в титане?
- 16. Как нарисовать линию в OCaml?
- 17. Как нарисовать линию в mapview
- 18. Как сломать длинную линию в двойных кавычках?
- 19. Как создать длинную красную линию (предельную линию) в MPAndroidChart
- 20. Как нарисовать десятки тысяч строк в SceneKit?
- 21. используя java, чтобы нарисовать кратчайшую линию и самую длинную линию с разными цветами.
- 22. Как нарисовать длинную команду bash в vim?
- 23. Как нарисовать линию, как мел?
- 24. Как нарисовать линию динамически андроида
- 25. Как нарисовать линию на iPhone?
- 26. Как нарисовать линию X = 1?
- 27. Как нарисовать линию на холсте?
- 28. SDL2 Как нарисовать пунктирную линию
- 29. Как нарисовать линию между ListBoxItems
- 30. Как нарисовать линию с JavaFX
вы можете перерисовать линию при перемещении экрана, или вы можете сделать эту линию в центре. –
попробуйте поставить «INFINITY» как ширину или высоту из math.h –
Did not made it. Хорошая идея, хотя :) –