算数几何的绘制

简介: 算数几何的绘制

数几何的显示绘制,可用于几何图形的的旋转,坐标转换,移动等直观验证

平面中,一个点(x,y)绕任意点(dx,dy)顺时针旋转a度后的坐标
xx= (x - dx)*cos(-a) - (y - dy)*sin(-a) + dx ;
yy= (x - dx)*sin(-a) + (y - dy)*cos(-a) +dy ;
平面中,一个点(x,y)绕任意点(dx,dy)逆时针旋转a度后的坐标
xx= (x - dx)*cos(a) - (y - dy)*sin(a) + dx ;
yy= (x - dx)*sin(a) + (y - dy)*cos(a) +dy ;

消除锯齿

Graphics2D g2 = (Graphics2D) g;//新绘图类
 //消除文字锯齿
  g2.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
  //消除画图锯齿
 g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);

**

BasicStroke参数详解**

在JAVA 2D开发中,BasicStroke用于定义线条的特征,我们可以调用Graphics2D类中的setStroke方法来将新创建的BasicStroke对象设置进去。BasicStroke的构造方法如下所示

public BasicStroke(float width, int cap, int join, float miterlimit,float dash[], float dash_phase) {...}

构造方法参数说明

2.1 width

这个参数最容易理解,表示线条的宽度

2.2 cap

只能取三个值:CAP_BUTT, CAP_ROUND or CAP_SQUARE,表示不同的线端。

意思如下:

2.3 join

这个参数表示当两条线连接时,连接处的形状,可以取JOIN_ROUND, JOIN_BEVEL, or JOIN_MITER三个值。

意思如下:

2.4 miterlimit

当你使用JOIN_MITER这种策略来表示连接处形状的时候,由于两根线的连接角度可能很小,那么,就会导致延伸出来的那个角特别长!本参数用来限制那个尖角的最大长度!当你使用JOIN_MITER策略的时候,本参数必须大于1,本参数的默认值是10.0f 。

2.5 dash[]

画虚线的时候,使用这个参数,虚线是由:“线+缺口+线+缺口+线+缺口……”来组成的。所以本参数就是定义的这些线、缺口的长度:{线的长度,缺口的长度,线的长度,缺口的长度……}

2.6 dash_phase

最后一个参数是跟dash[]这个数组配合的参数,表示在画虚线的时候,从一定的偏移量处开始画。

下面这个图,统一说明了dash[]和dash_phase的意思:

AOE技能覆盖图

后续讲一下向量的使用

向量加法减法的几何意义、平移、旋转等

向量点乘,叉乘的意义和几何意义

判断点是否在一个矩形内

检测点是否在扇形之内

Java绘图: 使用 Graphics 类绘制线段、矩形、椭圆/圆弧/扇形、图片、文本

[算法][包围盒]球,AABB,OBB

目录
相关文章
|
2月前
|
算法框架/工具 C++ Python
根据相机旋转矩阵求解三个轴的旋转角/欧拉角/姿态角 或 旋转矩阵与欧拉角(Euler Angles)之间的相互转换,以及python和C++代码实现
根据相机旋转矩阵求解三个轴的旋转角/欧拉角/姿态角 或 旋转矩阵与欧拉角(Euler Angles)之间的相互转换,以及python和C++代码实现
110 0
|
2月前
第4章-变换-4.3-四元数
第4章-变换-4.3-四元数
26 3
|
2月前
|
机器人 计算机视觉
巧用 OpenCV solvePnP() 函数完成由图像坐标系到机器人坐标系的转换(二维坐标系之间的转换)
巧用 OpenCV solvePnP() 函数完成由图像坐标系到机器人坐标系的转换(二维坐标系之间的转换)
46 2
|
2月前
第4章-变换-4.0
第4章-变换-4.0
17 2
|
2月前
|
Python
python实现:旋转矩阵转换为四元数
python实现:旋转矩阵转换为四元数
33 0
|
2月前
|
算法框架/工具
第4章-变换-4.2-特殊矩阵变换和运算
第4章-变换-4.2-特殊矩阵变换和运算
12 0
|
5月前
|
算法 图形学
【计算机图形学】实验四 二维图形的缩放、旋转,平移,组合变换
【计算机图形学】实验四 二维图形的缩放、旋转,平移,组合变换
123 2
|
4月前
|
算法 Java
图像放缩之双立方插值
图像放缩之双立方插值
29 0
|
10月前
|
机器人 C# 图形学
C# | [极坐标] 与 [平面直角系坐标] 的相互转换
极坐标和平面直角系坐标是常见的坐标系统,它们在不同的应用场景中都有重要的作用。而在计算机图形学、物理模拟和机器人控制等领域,我们经常需要在极坐标和平面直角系坐标之间进行转换。
155 2
C# | [极坐标] 与 [平面直角系坐标] 的相互转换
|
12月前
数学问题-圆上某点沿圆心旋转后的坐标关系式
数学问题-圆上某点沿圆心旋转后的坐标关系式
168 1