`
jonson
  • 浏览: 169006 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

计算某点绕中心点旋转一个角度后的坐标

阅读更多

开发中碰到一个坐标转换的算法问题,终于解决了,在此分享下。

java代码实现如下:

	private static Point calcNewPoint(Point p, Point pCenter, float angle) {
		// calc arc 
		float l = (float) ((angle * Math.PI) / 180);
		
		//sin/cos value
		float cosv = (float) Math.cos(l);
		float sinv = (float) Math.sin(l);

		// calc new point
		float newX = (float) ((p.x - pCenter.x) * cosv - (p.y - pCenter.y) * sinv + pCenter.x);
		float newY = (float) ((p.x - pCenter.x) * sinv + (p.y - pCenter.y) * cosv + pCenter.y);
		return new Point((int) newX, (int) newY);
	}

 

0
2
分享到:
评论

相关推荐

    python实现一个点绕另一个点旋转后的坐标

    通过定义旋转中心点、旋转角度和被旋转点,可以应用正余弦函数计算旋转后点的新坐标。Python语言通过使用数学库和绘图库,使得该过程变得简单和直观。此外,通过示例代码的运行结果,读者可以直观地看到点在空间中...

    C#实现计算一个点围绕另一个点旋转指定弧度后坐标值的方法

    在C#编程中,有时我们需要处理图形或几何问题,例如计算一个点围绕另一个点旋转后的坐标值。这个任务涉及到坐标系统的数学运算,包括向量、旋转和角度转换。下面我们将详细介绍如何实现这个功能。 首先,我们定义一...

    【Labview机器视觉】 已知两点坐标以及角度,计算旋转中心

    1:内容:计算旋转中心,已知旋转中心计算新坐标点 2:采用labview2017公式节点,方便转化到C#或者C++ 3:机器视觉中CCD与机械手的坐标标定计算有广泛应用 4:广大机器视觉应用开发者可以借鉴参考

    halcon 旋转中心,以及一个点根据中心旋转后得到新的坐标 不用自己根据三角函数去计算

    1、 halcon的9点标定就不多说了,很多人在旋转中心上求不准,或者旋转中心求出来后不知道具体用法,本示例完整演示旋转中心的求证,可视化演示旋转中心的验证。 2、 里面的示例图片是项目调试实际的图片,在精度...

    三维空间位置绕直线旋转算法

    给定点 \(\mathbf{P}(x, y, z)\) 和直线 \(\mathbf{L}\),我们需要构造一个旋转矩阵 \(\mathbf{R}\),使得点 \(\mathbf{P}\) 绕着直线 \(\mathbf{L}\) 旋转一定角度 \(\theta\) 后得到新的点 \(\mathbf{P}'(x', y', ...

    C# 实现点任意角度旋转

    2. **旋转公式**:二维平面上,一个点 `(x, y)` 绕原点逆时针旋转M度后的坐标 `(x', y')` 可以用以下公式计算: ``` x' = x * cos(M) - y * sin(M) y' = x * sin(M) + y * cos(M) ``` 3. **应用到A点**:将`(Ax...

    三维_三维旋转_matlab_三维坐标旋转_空间点_空间点旋转_

    旋转中心是指旋转不发生改变的那个固定点,通常是一个三维坐标。旋转角度则是决定旋转程度的参数,通常以度或弧度为单位。 MATLAB提供了几种方法来实现三维旋转,其中最常用的是使用`rotate`函数或者通过构建旋转...

    opencv 图像旋转 任一点坐标转换 裁剪图像

    这个函数接受三个参数:中心点(旋转的原点)、旋转角度和缩放因子。中心点默认是图像的中心,但可以自定义为图像上的任意点,这样可以使旋转更加灵活。例如,如果希望图像以左上角为原点旋转,那么需要先计算出该点...

    67.(cesium篇)cesium绕中心点旋转(基于当前视图信息).zip

    绕中心点旋转的核心在于设置相机的运动路径和旋转角度。Cesium提供了`Quaternion`(四元数)和`Matrix4`(4x4矩阵)等数学工具来处理旋转。四元数是一种更高效且避免了万向节死锁问题的旋转表示方式。在Cesium中,...

    OpenGL基于着色器-鼠标确定三角形绕屏幕中心点旋转-快捷键-菜单

    然后,这三个点构成的三角形将在屏幕中心点周围旋转。为了实现这个功能,我们需要: 1. 鼠标事件处理:使用GLUT或GLFW等库来处理鼠标输入,获取鼠标点击的位置。 2. 世界坐标与屏幕坐标的转换:将鼠标点击的屏幕...

    qt3d 实现物体绕自身坐标系旋转 源码

    因此,如果你希望物体先绕一个轴旋转,再绕另一个轴旋转,你需要按照从Z到X的顺序依次添加`rotate`操作。这是因为Z轴旋转不会影响X轴和Y轴,Y轴旋转只影响X轴,而X轴旋转只影响Y轴。 在`qtquick_test`项目中,可能...

    鼠标坐标计算旋转角度-易语言.zip

    假设我们需要计算一个对象(如图形或图像)相对于鼠标位置的旋转角度,我们可以将对象的中心点设为新的坐标原点,然后利用直角三角形的性质来求解。如果鼠标坐标在对象的右下方,那么旋转角度通常是正的;反之,如果...

    已知一点坐标和经纬度求其它经纬度坐标或相应坐标经纬度

    这段代码用于计算一个点相对于另一个点的方位角,即从北方向顺时针旋转到目标点的方向。 #### 坐标转换 ```java public LngLat converToLant(LngLat Lgt, double angle, double dis) { // 将坐标转化成相应的...

    根据鼠标坐标计算旋转角度易语言源码

    假设我们有一个点(Px, Py),它在旋转θ角度后的新坐标(Px', Py')可以通过以下矩阵乘法计算得出: \[ \begin{bmatrix} Px' \\ Py' \end{bmatrix} = \begin{bmatrix} cos(θ) & -sin(θ) \\ sin(θ) & cos(θ) \end{b...

    机器人坐标系变换 坐标变换-旋转部分 二维坐标旋转的向量和几何表示

    二维坐标旋转是指在一个平面上,以某一点作为旋转中心,对点或者坐标系进行角度变换的过程。 旋转操作可以通过向量来表示,每一个点在二维平面上都可以由一个向量来表示,而旋转则是对这个向量的角度进行调整。向量...

    C 三角形旋转变换

    本项目涉及的是二维平面上的三角形旋转变换,具体实现是根据用户输入的三角形三个顶点坐标以及一个参考点p的坐标,进行顺时针旋转操作。下面将详细介绍这一过程中的关键知识点。 首先,我们要理解坐标系统和向量的...

    卧加坐标自动计算v2

    标题“卧加坐标自动计算v2”所涉及的是一个专门针对卧式加工中心的软件工具,该工具的主要功能是高效地进行回转中心的坐标计算。卧式加工中心是一种能够进行多轴加工的机床,其工作台可旋转,使得工件在不同的角度下...

    opencv图像 旋转 坐标

    首先,OpenCV提供了`getRotationMatrix2D`函数来生成旋转矩阵,该函数接受三个参数:中心点坐标(图像的旋转中心),旋转角度(顺时针为负,逆时针为正),以及缩放因子(保持原图比例则为1)。例如: ```python ...

Global site tag (gtag.js) - Google Analytics