Project1

标题: 怎么按照角度绘制线段 [打印本页]

作者: 804173948    时间: 2013-3-31 22:46
标题: 怎么按照角度绘制线段
本帖最后由 804173948 于 2013-4-1 22:05 编辑

就是说有一条线段 起点坐标(x1,y1)终点(x2,y2),然后另一线段由(x2,y2)为起点 按照x度画一条长度为n的线段(或者教我怎么求该线段的终点坐标)
在本站搜索了很久 也找不到合适的…… 而且本人才读初二 如果可以希望能解说一下……
(为了找出角度和坐标的关系……我把整本“草稿本”都写满了。。问题是“草稿本”是语文书……
实在不行才问各位高手们的)
作者: 后知后觉    时间: 2013-3-31 23:16
看来你的数学学得不好啊.
虽然我也忘得差不多了.但是我是已经离开校园很多年的人了= =b
http://www.66rpg.com/articles/4652
作者: 沙漠点灰    时间: 2013-3-31 23:35
起终点模式:
  1. sprite = Sprite.new
  2. sprite.bitmap = Bitmap.new(100,2)
  3. sprite.bitmap.fill_rect(sprite.bitmap.rect, Color.new(255,255,255))
  4. sprite.oy = sprite.bitmap.height/2
  5. a = [100,100]
  6. b = [200,0]

  7. sprite.x, sprite.y = a
  8. length = Math.sqrt((b[0]-a[0])**2+(b[1]-a[1])**2)
  9. sprite.zoom_x =length/sprite.bitmap.width
  10. if (a[0] < b[0])
  11.   sprite.angle = Math.acos((b[1]-a[1])/length) * 180 / Math::PI - 90
  12. else
  13.   sprite.angle =-Math.acos((b[1]-a[1])/length) * 180 / Math::PI - 90
  14. end
  15. loop { Graphics.update }
复制代码
a是起点
b是终点

长度模式:
length换成想要的值(浮点值),用三角函数算出b值再用上面的部分代码即可。
因为忘了初二讲了什么,建议lz去看看高中三角函数相关章节,记得没错的话,不是很难,弧度制什么必须理清




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1