DrawCurve问题~~~

xinxin1982 2008-07-11 02:18:18

Convert.ToInt16(mypoint[i].X), Convert.ToInt16(mypoint[i].Y)

mypoint[i].X和mypoint[i].Y必须为int,这样出来的东西不准确,可以为double或者float么,,如果重载,怎么弄?小弟不才,请教各位大大给点具体例子。。

pic_gpr.DrawCurve(myPen2, mypoint);
...全文
267 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
gomoku 2008-07-11
  • 打赏
  • 举报
回复
....double怎么转换成float?

double d = 123.0;
float f = (float)d;
xinxin1982 2008-07-11
  • 打赏
  • 举报
回复
昨天也查看msdn了。。double怎么转换成float?...可以转换么,,没看到啊。。好像记得不可以。。

直接给point[i].X赋double时候。。有错误。。。

还是一开始就都用float?...麻烦各位大大帮忙。。。。
nodman 2008-07-11
  • 打赏
  • 举报
回复
显然不对啊兄弟,要用PointF定义:


PointF[] mypoint = new PointF[m];
xinxin1982 2008-07-11
  • 打赏
  • 举报
回复
Point[] mypoint = new Point[m];

我是这么定义point的,,是不是有问题?。。。貌似只让用int给mypoint[i].X。。分不够继续给哈~~
xinxin1982 2008-07-11
  • 打赏
  • 举报
回复
mypoint[i].X = (float)(ltx + fenge_x * i);

错误 1 无法将类型“float”隐式转换为“int”。存在一个显式转换(是否缺少强制转换?) D:\新新\work\Form2.cs 182 33 20080707_03测试

不好意思。。。继续闻闻。。。

nodman 2008-07-11
  • 打赏
  • 举报
回复
这是C#吗,GDI+中本来就有PointF的类型,x,y都是float型。
业界也叫做“亚像素”

Graphics.DrawCurve本来就有PointF类型的重载,直接可以用。

public void DrawCurve(
Pen pen,
PointF[] points
)

srhouyu 2008-07-11
  • 打赏
  • 举报
回复
DrawCurve本来就是有支持浮点型点坐标的重载的啊


DrawCurve(Pen, PointF[]) 绘制经过一组指定的 PointF 结构的基数样条。
DrawCurve(Pen, PointF[], Single) 使用指定的张力绘制经过一组指定的 PointF 结构的基数样条。
DrawCurve(Pen, PointF[], Int32, Int32) 绘制经过一组指定的 PointF 结构的基数样条。从相对于数组开始位置的偏移量开始绘制。
DrawCurve(Pen, PointF[], Int32, Int32, Single) 使用指定的张力绘制经过一组指定的 PointF 结构的基数样条。从相对于数组开始位置的偏移量开始绘制。
xinxin1982 2008-07-11
  • 打赏
  • 举报
回复
谢谢~晚上回去试试。。。

110,719

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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