绘制凸多面体三面投影图和正轴测图.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
绘制凸多面体三面投影图和正轴测图

绘制凸多面体三面投影图和正轴测图 班级: 姓名: 学号: 指导老师: 一,立体图及顶点编号、各点坐标表面编号: 二,数据文件: A: 60,0,0,60,30,0,30,60,0,0,60,0,0,0,0,60,0,20,60,30,20,30,60,47,15,60,60,0,60,60,0,0,60,15,0,60 NPS:5,5,6,5,6,5,6,6 S: 1,2,7,6,1,0,2,3,8,7,2,0,3,4,10,9,8,3,5,11,10,4,5,0,7,8,9,12,6,7,9,10,11,12,9,0,1,6,12,11,5,1,1,5,4,3,2,1 三,程序清单: Option Base 1 Dim g As Integer Private Sub Command1_Click() Form2.Visible = True Form1.Visible = False Form2.Height = 10000 Form2.Width = 12000 Form2.Pic2.Width = 9000 Form2.Pic2.Height = 9000 Form2.Pic2.Scale (-140, 120)-(160, -140) Form2.Pic2.DrawWidth = 2 m = Val(Text1.Text) n = Val(Text2.Text) ns = Val(Text3.Text) np = Val(Text4.Text) theta = Val(Text5.Text) phi = Val(Text6.Text) 将输入的数据输出给各项值 Dim ss As Integer ReDim a(m, n), b(m, n), nv(m, n), s(ns, np) ReDim t(4, 4), nps(1, ns), f(ns), e(24, 3) FileName = \a.txt Call inputdat(m, n - 1, a(), FileName) For i = 1 To m a(i, 4) = 1 Next i FileName = \nps.txt Call inputdat(1, ns, nps(), FileName) FileName = \s.txt Call inputdat(ns, np, s(), FileName) theta = theta * 0.01745 phi = phi * 0.01745 Rem 矩阵初始化 For i = 1 To 4 For j = 1 To 4 t(i, j) = 0 Next j Next i For ss = 1 To 3 For i = 1 To 4 For j = 1 To 4 t(i, j) = 0 Next j, i Rem 通过select语句分别给正面投影、水平投影、侧面投影变换矩阵赋值 Select Case ss Case 1 给正面投影变换矩阵赋值 t(1, 1) = 1: t(2, 2) = 0: t(3, 3) = 1: t(4, 3) = 40: t(4, 1) = 40 Case 2 给水平投影变换矩阵赋值 t(1, 1) = 1: t(2, 3) = -1: t(4, 3) = -20: t(4, 4) = 1: t(4, 1) = 40 Case 3 给侧面投影变换矩阵赋值 t(2, 1) = -1: t(3, 3) = 1: t(4, 1) = -10: t(4, 4) = 1: t(4, 3) = 40 End Select Rem 矩阵相乘 Call mult(a(), t(), b(), m, n, 4) Rem 绘图输出 Rem 绘制三视图 For i = 1 To ns For k = 1 To nps(1, i) x = -b(s(i, k), 1): y = b(s(i, k), 3) If k = 1 Then Form2.Pic2.PSet (x, y) Else Form2.Pic2.Line -(x, y) End If Next k Next i Next ss t(1, 1) = Cos(theta): t(1, 3) = -Sin(theta) * Sin(phi) t(2, 1) = -Sin(theta): t(2, 3) = -Cos(theta) * Sin(phi) t(3, 3) = Cos(phi): t(4, 4) = 1 Call mult(a(), t(), b(), m, n, 4) Call judge(s(), b(), f(

文档评论(0)

rovend + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档