如何绘制斜的矩形

需要正能量 2008-04-11 09:12:31
java2D方面对巨型的绘制,好象只能给定四个参数,x,y,w,h.
请问能不能绘制那种倾斜的矩形?而且我想拿Shape得到这个矩形.
不想用坐标转换...
...全文
340 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hmsuccess 2008-04-13
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 dracularking 的回复:]
保证Shape的话 用Polygon


Java codeint[] xpoints = { 100, 200, 300, 200 };
int[] ypoints = { 200, 100, 200, 300 };
Polygon p = new Polygon(xpoints, ypoints, 4);
g.drawPolygon(p);
[/Quote]
Polygon 是二维的
linyanzhuo 2008-04-11
  • 打赏
  • 举报
回复
不是只能给4个参数阿
这样画 指定点就可以了
GeneralPath p1 = new GeneralPath();
// draws the polygon on the side
p1.moveTo(w * .25f, 0.0f);
p1.lineTo(w * .625f, h * .375f);
p1.lineTo(w * .125f, h * .375f);
p1.lineTo(w * .625f, h * .625f);
p1.lineTo(w * .25f, (float) h);
p1.lineTo(0.0f, h * .5f);
p1.closePath();

用下面这个算是坐标变换么? 不用坐标变换好像是不行
AffineTransform affineTransform = new AffineTransform(1, 0, 0, 1,
0, 0);
dracularking 2008-04-11
  • 打赏
  • 举报
回复
保证Shape的话 用Polygon

int[] xpoints = { 100, 200, 300, 200 };
int[] ypoints = { 200, 100, 200, 300 };
Polygon p = new Polygon(xpoints, ypoints, 4);
g.drawPolygon(p);
jayflee 2008-04-11
  • 打赏
  • 举报
回复
必须还要有个表示矩形的倾斜度的参数(一个角度,另外一个点的坐标等)。然后把矩形所有点坐标计算出来,再按二楼那样画四条线段。
aoyihuashao 2008-04-11
  • 打赏
  • 举报
回复
这四个参数只能确定矩形的样子,不足以确定一个矩形的倾斜度。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧