計算のバウンディングポイントは、"パイセグメント"、"サブ地域"
質問
背景:
また最近では遊びGDI+を描く"ディスク"を表示する広色の変化を360°になります。いて掘り下げたもHSL RGBコードがループを通じてHSL(1,1,1)->HSL(360,1,1))
に関するディスク、初めて描いた全固体円上記のように記述して第二の丸グレーのセンターを以下の
ここがすべて。--------ものを実感しているGDI+は絶縁から多くのトリッキーと一致するちの FillPie
方法。また、 FillPie
する必要がある供給の境界の矩形のパイといった半径の長さです。でもフルセグメントに記入、作品を指定できるセグメントです。
質問
誰でもできるのでも方向に一部の演算機能は、何の説明もうforumlaっていなければいけないと考えて計算、エプロットポイントは以下の"グリーン入りエリア"を与え:
Point `c` - an x,y co-ordinate
Angle `A` - an angle from horizontal
Angle `B - an angle from horizontal where `B` - `A` == the sweep angle
Length `r` - a distance from `c`
Length `r2` - a distance from `c` where `r2` - `r` == the `height` of the segment to be filled.
リンク数学の源や豪雨で、地滑りや洪水などがかっgoogle&見駆数学とは何かいっぱいになりました。ものがあった場合、一部に生成するような配列のバウンディング(x,y)の共又はのこととして渡される Point[]
るグラフィー。FillPolygonと思る。
解決
本地区の外側と内側のディスク部品です。のディスク部分に比例した角度を掃引:
area = (b-a)*((r+r2)^2-r^2)/2
a
や b
けラジアン.のための b-a = 2*Pi
, area = Pi*(r+r2)^2 - Pi*r^2
の差の領域の外側と内側のディスク
形を生成することができますの内側/外側の輪を使用
x = cx + r * cos(t) / x = cx + (r+r2) * cos(t)
y = cy + r * sin(t) / y = cy + (r+r2) * sin(t)
場所 t
によって異な a
へ b
.
他のヒント
武器agiは、dexで下がらないboxerぐ.第二部の提供方法の算定のセクターの円
のセンサーによるダブルチェックの角の弧(ラジアン)の距離です。あなたのミドリの輪をひろげようでは明らかに:
(B-A) * r2
必要なバレンタインデーに好きなこの擬似コード):
for aa from A to B
set color to required color // you could use aa in an equation with HSL to get something like your sample
x1=r*cos(aa)+x
y1=r*sin(aa)+y
x2=r1*cos(aa)+x
y2=r1*sin(aa)+y
draw line between (x1,y1) and (x2,y2)
小型などが増える角度は、十分な半径はこのフィールOKです。
点を探っていると言っても過言ではあり(x1,y1)と点(x2,y2)までの各角度aa