- PR -

.NET で大きな矢印の描画をしたい

1
投稿者投稿内容
maru
ぬし
会議室デビュー日: 2003/01/27
投稿数: 412
投稿日時: 2005-08-24 13:12
こんにちは。
現在、VS2003(VB.NET)で開発しています。

myPen.StartCap = LineCap.ArrowAnchor

で、線の描画ができますが、矢印の矢の部分が小さいので、大きくしたいのですが
どのようにしたらいいのでしょうか?
線の幅を太くすれば大きくなりますが、線の太さを変えずに矢印の部分だけを大きく
したいのです。
ご存知の方おられませんでしょうか?
にしざき
ぬし
会議室デビュー日: 2003/06/30
投稿数: 304
投稿日時: 2005-08-24 14:21
ちょっと調べれば CustomLineCap を使えばいいということはわかったんですが、動くまでが苦労しました。

コード:
Const ArrowSize As Integer = 4
Dim points As PointF() = New PointF() {New PointF(0, 0), New PointF(ArrowSize / 2, -ArrowSize), New PointF(-ArrowSize / 2, -ArrowSize), New PointF(0, 0), New PointF(0.5, 0), New PointF(0.5, -ArrowSize), New PointF(-0.5, -ArrowSize), New PointF(-0.5, 0)}
Dim path As GraphicsPath = New GraphicsPath
path.AddPolygon(points)

myPen.CustomStartCap = New CustomLineCap(path, Nothing, LineCap.Triangle)

cats
大ベテラン
会議室デビュー日: 2002/11/29
投稿数: 221
お住まい・勤務地: 東京
投稿日時: 2005-08-24 16:17
AdjustableArrowCapを使った方がいいそうです。

myPen.CustomStartCap = New AdjustableArrowCap(8, 8)

[ メッセージ編集済み 編集者: cats 編集日時 2005-08-24 16:18 ]
にしざき
ぬし
会議室デビュー日: 2003/06/30
投稿数: 304
投稿日時: 2005-08-24 16:27
> AdjustableArrowCap
お、こんなのあったんですね。こりゃ楽だ。
maru
ぬし
会議室デビュー日: 2003/01/27
投稿数: 412
投稿日時: 2005-08-24 17:14
わざわざコードをありがとうございます。
試してみます。
1

スキルアップ/キャリアアップ(JOB@IT)