社区
Delphi
帖子详情
如何确定所绘线段的实际长度?
cxb_zdl
2002-02-13 01:46:26
各位大侠:
我在用delphi绘制一张图表时,如何确定我绘出的线段到底是多少厘米长呢?
...全文
203
4
打赏
收藏
如何确定所绘线段的实际长度?
各位大侠: 我在用delphi绘制一张图表时,如何确定我绘出的线段到底是多少厘米长呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cxb_zdl
2002-02-21
打赏
举报
回复
谢谢小新,这问题我已经解决了!其实我就是为了精确打印按实际比例(在电脑上是逻辑比例)绘制的图件,哈哈,可让我头痛了好几天.
用GetDeviceCaps函数。
cobi
2002-02-14
打赏
举报
回复
在delphi中,使用moveto和lineto画线,一般的都是给出坐标然后实现。那实际上已经能够知道线段的长度,不过那时像素的点数。你要知道实际的长度,只要知道如何实现像素点和实际长度的转换即可,查看一下相关的api吧
cxb_zdl
2002-02-13
打赏
举报
回复
也就是你画一条线,如何知道这条线有几厘米长。
vcshcn
2002-02-13
打赏
举报
回复
什么意思
GisTool_V4.8
软件简介: MAPGIS6.5实用工具,集成若干MAPGIS6.5不具有的实用功能,简单易用。 普通版有以下特色功能: 1、精确制图功能(类似于AutoCAD)。画线、移动、复制图元时,都可以输入距离和角度,还可以捕捉端点(按SHIFT)、中点(按CTRL)、交点(按SPACE)、垂足(按ALT)等,F2为正交开关,CTRL+D为
线段
单选开关。 2、滚轮缩放功能。向前滚动图形放大,向后滚动图形缩小,按下滚轮图形平移。 3、格式刷功能。点、线、区都可以运用格式刷进行修改和编辑。 4、查询图元功能。自动查找文本、属性、子图、颜色等。 5、参数拾取功能。拾取点、线、区参数作为当前编辑参数。 6、等距排列功能。文本或图例都可以进行横向、纵向的等距离自动排列。 7、快速制表功能。利用画水平线、竖直线以及捕足功能,输入距离移动、复制、拉伸线条功能,可以快速绘制各种表格。 8、测量距离功能。测量直
线段
或多段折线的距离或
长度
,可以使用捕捉功能。 9、测量面积功能。测量面积不需要造区,按顺序点击拐点即可,也可选择一条闭合的
线段
,即可测量面积。可以直接测量线图元的方位角。 10、测量角度功能。选择直
线段
可以测量该
线段
的的方位角及象限角。 11、面积换算功能。直接将测量出来的图上面积转换为
实际
面积。 12、面积标注功能。点击某块区域,自动标注该区域的面积,可带引线标注。 13、坐标标注功能。在图上单击某个点,即可标出该点的图上坐标或
实际
坐标值,可带引线标注。 14、比例造线功能。
确定
比例尺后,输入以米为单位的数据时,可以自动转换为图上距离,不需要人工换算,同时可以输入距离和角度。 15、
线段
拉伸功能。能够将
线段
进行拉伸,所有选中的线节点将同时拉伸,同时可以输入距离和角度。 16、
线段
切除功能。互相相交的
线段
,选择其中一条,可以切除另外一条
线段
在该
线段
两侧的部分,也可以切除夹在两条
线段
中间的部分。 17、
线段
交会功能。选择两条不平行的
线段
,可以使其相交于某一点,已经相交的两条
线段
,可以切除交点任意一侧的部分。 18、
线段
炸开功能。将多段线在节点处分开,生成若干条
线段
。 19、
线段
旋转功能。输入一个角度值,并
确定
一个旋转基点,即可精确旋转一条
线段
。 20、改线
长度
功能。选项择一条
线段
,可以直接修改该
线段
的
长度
值。 21、属性编辑功能。采用电子表格的方式对图元属性进编辑,与excel、acsses能够直接互相复制、粘贴,并且能够实现图形联动、属性联动等操作。 22、属性提取功能。输入属性提取条件,能够将点、线、区中符合条件的图元提取到新的文件中。 23、属性标注功能。选择某个字段,可以将该字段的属性值标注在图元的相应位置上。 24、属性动态显示。选择某个点线区文件,可以将某个字段或所有字段的属性值,随着鼠标的移动,适时动态地显示出来。 25、ID关联功能。将点线区相应位置上的图元ID修改为同一属性值,排序后能够将点线区对应的属性值进行批量拷贝。 26、删除指定图元。可以根据图元ID能及图元属性有条件地对图元批量删除。 27、删除重叠图元。自动搜索互相重叠的图元,删除多余的重叠图元。 28、匹配图例参数。选择某个图例,可以将该图例的参数及属性值全部赋给相应的图元。 29、自动生成样槽。选择两条节点数相同的平行
线段
,能够自动生成黑白相间的样槽。 30、批量替换注释。输入若干条需要替换的注释,可以一次性进行替换,并自动保存替换数据,下次或打开另外一张图时仍可使用,不需要重新输入。 31、整图栽剪功能。不需要生成单独的栽剪框文件,只要选择工程文件中任一条封闭的线就会自动对工程中的所有可见文件进行栽剪,栽剪后的文件自动保存在新建的目录中,每次栽剪都会生成一个新的目录,栽剪后的文件名与原文件名一致。 32、CAD转MapGis。本功能可以将AutoCAD格式的图形文件转换成MapGis格式的图形文件,能将CAD中的充填图案直接转换成MapGis中的区图元,而且能将CAD中的内部块、多行文本直接转出,不需要在CAD中分解。完全按照CAD中的图层分层转出所有可见图元,颜色、线型自动转换,不需要对照表,所有操作全自动。并能够将CASS中生成的地物编码转为MapGis图元属性。 33、Excel转MapGis。本功能可以将 Microsoft Office Excel 电子表格文件中的各种表格直接转换成MapGis格式的点、线、面文件。 34、自动画柱状图。本功能可以将保存在 Microsoft Office Excel 电子表格文件中的钻孔数据绘制成钻孔柱
Matlab分形植物模拟
L 系统是美国生物学家Lindenmayer 1968 年为模拟生物形态而设计的描述植物形态与生长的方法。L 系 统
实际
上是字符串重写系统。即把字符串解释成图形,于是只要能生成字符串,也就等于生成了图形。从 一个初始串(叫做公理)记为 W 开始,将生成规则P 多次作用于其上,最后产生一个较长的命令串,用 它来绘图。 对于L 系统可以用较复杂的图形解释,在除了模拟植物分支拓扑结构外,还要加上
线段
长度
和转角等 几何形状。L 系统的符号串也称“龟行图”(turtle), 即设想一只乌龟在平面上爬行,乌龟的状态用三元组 (X,Y,D)表示, 其中X 和Y 分别代表横坐标和纵坐标,D 代表当前的朝向。令δ 是角度增量,h 是步 长。文中所用L 系统的符号规定与解释:F:从当前位置向前移一步,步长为h,同时画线;G:从当前位 置向前移一步,步长为h,但不画线;+:从当前方向逆时针转一个给定的角度δ; -:从当前方向顺时 针转一个给定的角度δ;|:原地转向180°;[:Push,将龟行图当前状态压进栈(stack);]:Pop,将图形 状态重置为栈顶的状态,并去掉该栈中的内容;A:记录状态的方向;z:记录当前的位置。
ThreeJS视频教程
计算
线段
与圆的交点 计算
线段
的
长度
判断折线是否在多边形内 等等) 5-sprite精灵(怎么让一个图标永远朝向屏幕,精灵的属性,精灵材质原理等,广告提示框必用) 6-骨骼游戏动画(什么是模型动画,常见游戏案例,如何...
基于C++开发的射击游戏
用DDraw实现射击游戏说明文档 要点一:画图自动切割 IDirectDrawSurface7::BltFast()方法中没有自动切割功能,即当画图元素超出窗口以外时不会自动切割,DDraw选择自动忽略不画,造成一旦超出窗口,画图元素会突然消失。 解决这一问题的方法是手动切割,代码如下: //自动切割 RECT scRect; //存放当前窗口大小区域 ZeroMemory( &scRect, sizeof( scRect ) ); GetWindowRect( GetActiveWindow(), &scRect ); //防止图片左上角超过窗口左上角 if ( x < 0 ) { m_rect.left -= x; x = 0; } if ( y scRect.right ? scRect.right : x; y = y > scRect.bottom ? scRect.bottom : y; m_rect.right = x + m_rect.right - m_rect.left > scRect.right ? scRect.right - x + m_rect.left : m_rect.right; m_rect.bottom = y + m_rect.bottom - m_rect.top > scRect.bottom ? scRect.bottom - y + m_rect.top : m_rect.bottom; 只需将上述代码加在CGraphic::BltBBuffer() 中的m_bRect = m_rect; 前即可。 要点二:背景的滚轴实现 画背景可以分为以下三种情况: 情况一:背景图片与窗口等高 情况二:背景图片高度小于窗口高度 情况三:背景图片高度大于窗口高度 上述讲解图与代码相对应地看,有助于容易理解。 另外,要点一实现之后,由于已经可以自动切割,画背景可以用其它方法。 要点三:精灵图的实现 在游戏中,如RPG游戏中的人物图、射击类游戏的飞机、爆炸等,叫做精灵图。 精灵图
实际
上是将所有帧的图片放在一个文件中,游戏时靠一个RECT来控制画图像文件中的哪一部分,进而控制游戏显示哪一帧图,只需控制好RECT的位置即可。如下图: 控制RECT的四个角的坐标的移动,有以下代码: if (m_timeEnd – m_timeStart > 100) //只有到了100ms之后才绘图 { m_ImageID++; if(m_ImageID - m_beginID >= num) { m_ImageID = m_beginID; //最后一帧的下一帧是第一帧 } m_timeStart = timeGetTime(); } int id = m_ImageID++; SetRect(&m_rect, 41 * id, 0, 41 * (id + 1), 41); //飞机精灵图大小是41×41 m_pGraph->BltBBuffer(m_pImageBuffer, true, m_Pos.x, m_Pos.y, m_rect); 这样就实现了精灵动画的效果。 要点四:拿STL进行子弹的实现 子弹的实现可以使用STL中的vector,当按下开火键时发出一颗子弹,就往vector中添加一个结点;当子弹飞出窗口或击中敌机时,再将结点从vector中删除。每帧游戏画面中子弹飞行时只需将vector中的所有子弹进行处理、绘画即可。 参考代码如下: 1.添加子弹 if (g_ctrlDown) //当ctrl键按下时开炮! { m_BulletEnd = m_Gtime->GetTime(); if ((m_BulletEnd - m_BulletStart) * 1000 > 120) //如果连续按着开火键不放,这里控制不会发出太多子弹 { m_BulletStart = m_BulletEnd; MBULLET tmpBullet; tmpBullet.pos.x = m_SPos.x - 1; //记录开火时的子弹位置 tmpBullet.pos.y = m_SPos.y - 26; tmpBullet.speed = 5; //该子弹的飞行速度 m_BulletList.push_back(tmpBullet); //将子弹添加到vector中
图纸上标注的是
实际
尺寸吗_尺寸数字应该标注图纸上所画
实际
长度
。
尺寸数字应该标注图纸上所画
实际
长度
。已知物体主、俯视图,左视图表达方法正确的是( )。【图片】下图尺寸标注有几处错误: 。【图片】看懂下图表达的物体,下列说法正确的是( )。【图片】已知组合体的主、俯视图,其正确的左视图是: 。请判断下图中K点的位置【图片】若圆锥体的轴线处于侧垂线的位置,则圆锥体的三视图正确的是长、宽、高基准选择都合理的是: 。两轴线垂直相交的圆柱体的相贯线的...
Delphi
5,392
社区成员
262,732
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章