Я построил серию точек, используя пакет rgl
в R. Я нанес их в двух измерениях для простоты, но проблема все еще существует в трех измерениях. Фрагмент кода и график ниже показывают базовую линию точек, построенных в плоскости xy:
library(rgl)
seq <- seq(1, 10, by = 0.1)
df <- data.frame(x = seq, y = seq / 10)
clear3d("all")
bg3d(color = "white")
points3d(x = df$x, y = df$y, z = 0)
axes3d()
rgl.viewpoint(theta = 0, phi = 0)
Точки строятся, как и ожидалось. Однако, если я возьму эти же точки и переведу их на значительную величину, графическое устройство, похоже, не сможет обрабатывать точки:
library(rgl)
seq <- seq(1, 10, by = 0.1)
df <- data.frame(x = seq, y = seq / 10)
# Translate points
df <- df + 1000000
clear3d("all")
bg3d(color = "white")
points3d(x = df$x, y = df$y, z = 0)
axes3d()
rgl.viewpoint(theta = 0, phi = 0)
Это известное ограничение? Проблема в OpenGL или в пакете? Я работаю с некоторыми точками и поверхностями, которые имеют связанную систему координат, поэтому я бы предпочел не переводить свои данные обратно в исходную точку.