资源简介
文件夹内包含两个STL格式文件的模型,用于尝试读取。在C#控制台下完成,含有详细注释。

代码片段和文件信息
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string path1 = @“zhengfangti500.STL“;//加“@”的字符串为原义字符串,取消转义
//string path2 = @“圆柱体100-30.STL“;//加“@”的字符串为原义字符串,取消转义
Triangle[] prt1 = new Triangle[5000000];//5000个类数组,还需对其中每一个类进行实例化
int Triangle_num = 0;//三角形面片的数量
if (File.Exists(path1))//如果文件存在,则进行读取
{
using (StreamReader file = new StreamReader(File.Open(path1 FileMode.Open)))
{
char[] separator = { ‘ ‘ };//用于分割字符串的标示符号,即空格
string normal = “normal“;
while (file.ReadLine() != null)//当读取的一行不为空时,则进入循环
{
string line_normal = file.ReadLine();//读取包含“normal”的一行
if (line_normal.Contains(normal))//如果读取的一行确实存在“normal”则进行处理
{
string subString_1 = line_normal.Substring(16);//存储这一行索引为16以后的字符串注:索引从0开始
string[] str_normal = new string[3];//定义三个字符串数组,分别存储向量的X、Y、Z
str_normal = subString_1.Split(separator);//分割此字符串为三个字符串
prt1[Triangle_num] = new Triangle();//类数组必须要对使用的每一个类进行实例化
prt1[Triangle_num].Normal_x = Convert.ToDouble(str_normal[0]);
prt1[Triangle_num].Normal_y = Convert.ToDouble(str_normal[1]);
prt1[Triangle_num].Normal_z = Convert.ToDouble(str_normal[2]);
Console.WriteLine(prt1[Triangle_num].Normal_x + “ “ + prt1[Triangle_num].Normal_y + “ “ + prt1[Triangle_num].Normal_z);
file.ReadLine();//读取包含“outer loop”这一行,并不存储
string vertex_1 = file.ReadLine();//读取包含vertex的第一行即第1个点的信息
string sub_string_2 = vertex_1.Substring(16);//存储这一行索引为16以后的字符串
string[] str_vertex_1 = new string[3];//定义3个字符串数组分别存储第1个点3个分向量
str_vertex_1 = sub_string_2.Split(separator);//分割此字符串为三个字符串
prt1[Triangle_num].v1_x = Convert.ToDouble(str_vertex_1[0]);
prt1[Triangle_num].v1_y = Convert.ToDouble(str_vertex_1[1]);
prt1[Triangle_num].v1_z = Convert.ToDouble(str_vertex_1[2]);
Console.WriteLine(prt1[Triangle_num].v1_x + “ “ + prt1[Triangle_num].v1_y + “ “ + prt1[Triangle_num].v1_z);
string vertex_2 = file.ReadLine();//读取包含vertex的第二行即第2个点的信息
string sub_string_3 = vertex_2.Substring(16);//存储这一行索引为16以后的字符串
string[] str_vertex_2 = new string[3];//定义3个字符串数组分别存储第2个点
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2016-09-21 20:39 20160924C#控制台读取STL文件\
目录 0 2016-09-24 15:40 20160924C#控制台读取STL文件\ConsoleApplication1\
文件 947 2016-09-21 20:39 20160924C#控制台读取STL文件\ConsoleApplication1.sln
文件 44544 2016-09-24 20:01 20160924C#控制台读取STL文件\ConsoleApplication1.v11.suo
文件 187 2016-09-21 20:39 20160924C#控制台读取STL文件\ConsoleApplication1\App.config
目录 0 2016-09-21 20:39 20160924C#控制台读取STL文件\ConsoleApplication1\bin\
目录 0 2016-09-24 20:02 20160924C#控制台读取STL文件\ConsoleApplication1\bin\Debug\
文件 6656 2016-09-24 20:02 20160924C#控制台读取STL文件\ConsoleApplication1\bin\Debug\ConsoleApplication1.exe
文件 187 2016-09-21 20:39 20160924C#控制台读取STL文件\ConsoleApplication1\bin\Debug\ConsoleApplication1.exe.config
文件 19968 2016-09-24 20:02 20160924C#控制台读取STL文件\ConsoleApplication1\bin\Debug\ConsoleApplication1.pdb
文件 22984 2016-09-24 20:02 20160924C#控制台读取STL文件\ConsoleApplication1\bin\Debug\ConsoleApplication1.vshost.exe
文件 187 2016-09-21 20:39 20160924C#控制台读取STL文件\ConsoleApplication1\bin\Debug\ConsoleApplication1.vshost.exe.config
文件 490 2015-07-10 19:01 20160924C#控制台读取STL文件\ConsoleApplication1\bin\Debug\ConsoleApplication1.vshost.exe.manifest
文件 3422 2016-01-09 19:37 20160924C#控制台读取STL文件\ConsoleApplication1\bin\Debug\zhengfangti500.STL
文件 66758 2016-05-03 15:37 20160924C#控制台读取STL文件\ConsoleApplication1\bin\Debug\圆柱体100-30.STL
文件 2618 2016-09-24 15:41 20160924C#控制台读取STL文件\ConsoleApplication1\ConsoleApplication1.csproj
目录 0 2016-09-21 20:39 20160924C#控制台读取STL文件\ConsoleApplication1\obj\
目录 0 2016-09-24 20:02 20160924C#控制台读取STL文件\ConsoleApplication1\obj\Debug\
文件 1466 2016-09-24 20:02 20160924C#控制台读取STL文件\ConsoleApplication1\obj\Debug\ConsoleApplication1.csproj.FileListAbsolute.txt
文件 1753 2016-09-24 19:25 20160924C#控制台读取STL文件\ConsoleApplication1\obj\Debug\ConsoleApplication1.csprojResolveAssemblyReference.cache
文件 6656 2016-09-24 20:02 20160924C#控制台读取STL文件\ConsoleApplication1\obj\Debug\ConsoleApplication1.exe
文件 19968 2016-09-24 20:02 20160924C#控制台读取STL文件\ConsoleApplication1\obj\Debug\ConsoleApplication1.pdb
文件 6704 2016-09-24 19:58 20160924C#控制台读取STL文件\ConsoleApplication1\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 0 2016-09-21 20:39 20160924C#控制台读取STL文件\ConsoleApplication1\obj\Debug\TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
文件 0 2016-09-21 20:39 20160924C#控制台读取STL文件\ConsoleApplication1\obj\Debug\TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
文件 0 2016-09-21 20:39 20160924C#控制台读取STL文件\ConsoleApplication1\obj\Debug\TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
目录 0 2016-09-21 20:39 20160924C#控制台读取STL文件\ConsoleApplication1\obj\Debug\TempPE\
文件 5480 2016-09-24 20:02 20160924C#控制台读取STL文件\ConsoleApplication1\Program.cs
目录 0 2016-09-21 20:39 20160924C#控制台读取STL文件\ConsoleApplication1\Properties\
文件 1358 2016-09-21 20:39 20160924C#控制台读取STL文件\ConsoleApplication1\Properties\AssemblyInfo.cs
文件 831 2016-09-24 20:01 20160924C#控制台读取STL文件\ConsoleApplication1\Triangle.cs
............此处省略0个文件信息
- 上一篇:C#实现双态按钮
- 下一篇:InTheHand.Net.Personal.dll
相关资源
- C#解析HL7消息的库135797
- C# OCR数字识别实例,采用TessnetOcr,对
- 考试管理系统 - C#源码
- asp.net C#购物车源代码
- C#实时网络流量监听源码
- C#百度地图源码
- Visual C#.2010从入门到精通配套源程序
- C# 软件版本更新
- C#屏幕软键盘源码,可以自己定制界面
- 智慧城市 智能家居 C# 源代码
- c#获取mobile手机的IMEI和IMSI
- C#实现简单QQ聊天程序
- 操作系统 模拟的 欢迎下载 C#版
- C#写的计算机性能监控程序
- 用C#实现邮件发送,有点类似于outlo
- MVC model层代码生成器 C#
- c#小型图书销售系统
- C# Socket Server Client 通讯应用 完整的服
- c# winform 自动登录 百度账户 源代码
- C#编写的16进制计算器
- C#TCP通信协议
- C# 数据表(Dataset)操作 合并 查询一
- C#语音识别系统speechsdk51,SpeechSDK51L
- 数据库备份还原工具1.0 C# 源码
-
[免费]xm
lDocument 节点遍历C# - EQ2008LEDc#开发实例
- DirectX.Capturec# winform 操作摄像头录像附
- c# 实现的最大最小距离方法对鸢尾花
- C#版保龄球记分代码
- C#自定义控件
评论
共有 条评论