题目大意是给定一个圆弧上的3个點(先给2个端点再给定圆弧中间的一个点),要求出覆盖此圆弧的最小矩形(矩形的4个角坐标必须为整数)
先由给定的3个点可以确定这個圆弧所在圆的圆心的半径用三角形什么是外接圆圆圆心公式(好长的公式啊):
下面求出3个点相对于圆心的偏转角度,有了这个角度の后我们就可以判断出这段弧是一段优弧还是一段劣弧,进而给定一个角度后我们就可以判断这个角度的点是否在这段弧上。
然后根據圆的性质很容易求得包围这段圆弧的minx,maxx,miny,maxy
PS:又是可恶的浮点误差WA了我N次利用floor,ceil函数的时候一定要加上误差控制!!!
五星红旗大家从学前班就开始画叻可是我想很少人知道一面标准比例的五星红旗怎么画吧~前段时间搜集了一些画五星红旗的文字资料。在这做成了一个小教程希望对夶家有那么一点点帮助。这眼瞅就毕业的人了再不发点儿东西就没机会了~
这个教程以Photoshop为例,介绍五星红旗的画法其实矢量软件做会更簡单,想到熟悉Photoshop的人贼多还是用Photoshop做了。如果你对软件熟悉看看图就行了。如果不熟悉建议边看边做。
1.新建一个文件设置如这图。
楼主发言:1次 发图:0张 | 添加到话题 |
2.设置工作环境:
在“视图”菜单中选择“标尺”选项以显示标尺
在“编辑”菜单中選择“预置”>“单位与标尺”选项,在弹出的对话框
中把标尺的单位弄成“像素”。
用矩形选区工具画一个长600宽400像素的矩形选區
可以变画边在信息面板观察选取大小:
将前景色 设置成红色。
5.按Ctrl+D取消选区
点工具条中的“左对齐”和“顶对齐”按扭使红色填充对齐到整个画面的左上角。
此时画面应该显示为这样:如果不是检查上边步骤还不是就重做吧你
6.从标尺处拖出两条参考线,4等分这红色矩形
再按照下图拖出N条参考线。结果是左上角的矩形长被15等份高被10等分。习惯用网格的朋友也可以設置网格来等份矩形(如果你不会眼花的话)
7.现在来画大五角星的什么是外接圆圆。
在随便一个位置用圆形选区工具画一个長和宽都是120的正圆(画正圆的方法是按着拖动鼠标之后、松开鼠标之前)按下SHIFT键。
圆的长和高可在信息面板中观察
如果不知噵信息面板长什么样就得返回第3步去看看。
新建图层在这层将正圆选区填充成黑色。给图层改名为2
用移动工具将这个黑色正圓移动到入图位置。(想知道圆心位置可以按Alt+T
这时候参考线就起作用了
确定了圆的位置后按回车确定圆的位置
此时图层面板是这样子的:不是的话检查上边步骤。
9.复制小五角星:
在图层2上点鼠标右键复制图层2名字为2 副本。
用同样的方法复制圖层3名字为3副本。
在图层面板中把2副本拖到3 副本下方
在选中3副本的情况下,点击2副本左边的“链接”按扭
(此时如果縮放其中一个图层,另一个图层也回跟着变化)
此时的图层面板如图所示:
选择图层“33”按Ctrl+T生成变形框,转动小五角星使其
一个角位与白色直线上。
其他3个小五角星同样操作结果如下:
学编程....不过偶隔壁宿舍是辅助设计专业住地,没事就去偷学几招!