标签: azimuth

太阳的位置给定时间,经度和纬度

这个问题在三年多前就被提出了.给出了答案,但是我发现解决方案存在问题.

下面的代码在R.我已经将它移植到另一种语言,但是直接在R中测试了原始代码,以确保问题不在于我的移植.

sunPosition <- function(year, month, day, hour=12, min=0, sec=0,
                    lat=46.5, long=6.5) {


  twopi <- 2 * pi
  deg2rad <- pi / 180

  # Get day of the year, e.g. Feb 1 = 32, Mar 1 = 61 on leap years
  month.days <- c(0,31,28,31,30,31,30,31,31,30,31,30)
  day <- day + cumsum(month.days)[month]
  leapdays <- year %% 4 == 0 & (year %% 400 == 0 | year %% 100 != 0) & day >= 60
  day[leapdays] <- day[leapdays] + 1

  # …
Run Code Online (Sandbox Code Playgroud)

math geometry r azimuth astronomy

82
推荐指数
5
解决办法
2万
查看次数

太阳(方位角)在Lua中的位置

我可以在网上找到LUA中只有一个功能,但它提供了错误的值(用专业的在线工具测量).

看起来从日出到中午之后的数学运算,但之后,太阳的角度又回到了日出的位置.应该从106°到253°,目前从106°到~180°到106°.

我正在使用的功能:

-- solar altitude, azimuth (degrees)
function sunposition(latitude, longitude, time)
    time = time or os.time()
    if type(time) == 'table' then time = os.time(time) end

    local date = os.date('*t', time)
    local timezone = (os.time(date) - os.time(os.date('!*t', time))) / 3600
    if date.isdst then timezone = timezone + 1 end

    local utcdate = os.date('*t', time - timezone * 3600)
    local latrad = math.rad(latitude)
    local fd = (utcdate.hour + utcdate.min / 60 + utcdate.sec / 3600) / 24
    local g = (2 …
Run Code Online (Sandbox Code Playgroud)

sdk lua sun azimuth coronasdk

9
推荐指数
1
解决办法
618
查看次数

R功能为太阳位置带来意想不到的效果

给定时间,纬度和经度,我想计算太阳的位置.我在这里找到了这个很棒的问题和答案:太阳在一天中的位置,经度和纬度.但是,当我评估函数时,我得到的结果不正确.考虑到答案的质量,我几乎可以肯定我的结果有些不对劲,但我问这个问题是试图解决问题的记录.

以下是为方便起见,下面重印的功能代码:

astronomersAlmanacTime <- function(x)
{
  # Astronomer's almanach time is the number of 
  # days since (noon, 1 January 2000)
  origin <- as.POSIXct("2000-01-01 12:00:00")
  as.numeric(difftime(x, origin, units = "days"))
}

hourOfDay <- function(x)
{
  x <- as.POSIXlt(x)
  with(x, hour + min / 60 + sec / 3600)
}

degreesToRadians <- function(degrees)
{
  degrees * pi / 180
}

radiansToDegrees <- function(radians)
{
  radians * 180 / pi
}

meanLongitudeDegrees <- function(time)
{
  (280.460 + 0.9856474 * time) …
Run Code Online (Sandbox Code Playgroud)

geometry r azimuth astronomy

7
推荐指数
1
解决办法
148
查看次数

给出太阳位置(方位角和仰角)以及纬度和经度的日期和时间

与此非常有用的问题相关,该问题涉及查找给定日期的太阳方位角和仰角以及坐标.我希望找到相反的:时间和日期太阳将在天空的位置.

因此,我想知道有人可能会帮助现有的公式或修改链接到的公式.

我目前的想法是采取两个范围,两者的变化为两度,一个用于方位角(120-123度)和高度(18-21度).然后编写一个算法来遍历所有日期/时间,并检查当天是否存在给定范围.在这些日子里循环并使用附加的算法并不能完全保持Big O的小,而且也不是最佳的性能.

请提供任何帮助或提示.

谢谢.

math azimuth astronomy

6
推荐指数
1
解决办法
2779
查看次数

TYPE_ROTATION_VECTOR的传感器值与不同设备的传感器值不同

我在我的应用程序中使用ROTATION_VECTOR类型的传感器数据.

使用我的Nexus 5,我可以从方向[0]获得方位角,并且可以使手机朝向下图所示的范围(这是非常准确的).

由于我在不同的设备上尝试了我的应用程序,我发现传感器值与我的Nexus 5测试设备不同.在我的三星Galaxy Nexus和三星Galaxy S3 Mini上,方位角受到倾斜设备的影响,如图所示.

仅限肖像 - 没有倾斜

TYPE_ROTATION_VECTOR正在使用传感器融合,这就是我使用传感器测试应用检查不同设备上的单个传感器值的原因.在Nexus 5上,当倾斜设备时,z轴的方向值保持大致相同,在三星Galaxy Nexus上,z的值在倾斜时变化(从直立到躺着大约90°).我担心传感器融合正在使用这些值,这就是为什么我的方位角在不同的设备上是不同的.

有没有人遇到类似的情况,甚至更重要的是:有没有人有解决方法或不同的方式来接收方位角?

为了确保,我寻找后置摄像头指向的方向......

这是我的代码:

final float[] mRotationMatrix = new float[9];
final float[] mRotationMatrixFromVector = new float[9];
final float[] orientation = new float[3];
Run Code Online (Sandbox Code Playgroud)

...

SensorManager.getRotationMatrixFromVector(mRotationMatrixFromVector,
                event.values);

// enables usable range like in picture
SensorManager.remapCoordinateSystem(mRotationMatrixFromVector,
                        SensorManager.AXIS_X, SensorManager.AXIS_Z,
                        mRotationMatrix);

SensorManager.getOrientation(mRotationMatrix, orientation);
Run Code Online (Sandbox Code Playgroud)

android azimuth device-orientation android-sensors sensor-fusion

6
推荐指数
1
解决办法
568
查看次数

如何在Android上从方位角获取指南针方向

我必须显示用户指向Android设备的方向.

我正在使用Sensor.TYPE_ACCELEROMETER,Sensor.TYPE_MAGNETIC_FIELD以获得方位角,俯仰,滚动.但我能够弄清楚如何从这里获得方向(北,南,东,西,......).

请帮忙

谢谢

android sensor azimuth android-sensors

6
推荐指数
1
解决办法
1万
查看次数

将陀螺仪与加速度计结合使用以获得航向

我正在使用Android设备获取标题(方位角或偏航角).

Android API使用Accelerometer值+ mganetic字段来计算矩阵旋转,然后从矩阵中提取方位角(也称为SensorManager.getOrientation(...))但结果非常不准确!特别是如果手机受到某些磁性物质的干扰.

然后我有陀螺仪,如果我整合了陀螺仪时间的价值,我就能得到一个实际的角度,但是像所有人都知道的那样:p,这可能会漂移... 10秒后甚至很难我'我没有移动10°漂移的角度......

所以在这里,我在一侧有accel + magneto的结果,它在磁场附近相当废话,另一方面我有陀螺的结果非常好,但随着时间的推移漂移......

所以我的问题是,是否有一种简单或聪明的方法将两个结果组合在一起以获得一种"稳健"的航向估算?我说很容易,因为我知道有卡尔曼滤波器..但即使是艰难的我读了理论50次我也不能得到一个该死的东西:).

谢谢!

android accelerometer azimuth orientation gyroscope

6
推荐指数
1
解决办法
1万
查看次数

将设备3D方向与太阳位置进行比较

我正在开发一款应用程序,要求用户将iPhone瞄准太阳以触发特殊事件.

我可以根据陀螺仪和CoreMotion框架检索设备3D方向四元数,从中我可以获得偏航,滚动和俯仰角度.我还可以根据当前日期和时间(GMT)以及纬度和经度计算太阳的方位角和天顶角.我接下来要弄清楚的是如何比较这两组值(手机方向和太阳位置)以准确地检测设备与太阳的对齐.

关于如何实现这一点的任何想法?

azimuth quaternions augmented-reality ios core-motion

4
推荐指数
1
解决办法
910
查看次数

Three.js:在两个方位角之间来回旋转物体

我有一个加载了 Three.js 的 3D 对象,该对象只能从前面看到,因为它是一个平面,而从后面看它是透明的......

\n\n

通过轨道控制,我可以限制方位角和极角的偏移......

\n\n

为了使 3D 有吸引力,它应该开始旋转......

\n\n
function animate() {\n    if ( mesh ) {\n        mesh.rotation.y += .005;\n    }\n    requestAnimationFrame( animate );\n    render();\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

如何限制 -90\xc2\xb0 和 90\xc2\xb0 之间的来回运动?

\n

javascript animation azimuth three.js

1
推荐指数
1
解决办法
2157
查看次数

球反弹后计算方位角

我有一个球.我知道它的方位角和速度.我想计算弹跳后的方位角(可能是墙).让我们调用方位角alpha.图片:

角度

我知道阿尔法.我知道墙的方位角.我需要 "?".Beta会很好(但不是那么必要).

math angle azimuth

0
推荐指数
1
解决办法
129
查看次数