碰到一个问题,不解决不爽

2024-02-04 00:32
文章标签 问题 碰到 解决 不爽

本文主要是介绍碰到一个问题,不解决不爽,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题的要素

  1. 随机生成一些长度、直径、位置、方向都不同的圆柱体;
  2. 数据文件需要是solid model格式,以便能导入到Fluent/ANSYS/Abaqus之类的软件中进行网格化和有限元或有限体积分析。

当前状态

已经解决。
这里写图片描述

这里写图片描述
解决了文件的生成和格式转换,但是要生成网格和进行分析,类似问题,从算法上的难度实际上仍然很大。可能需要巨大的内存和计算量。

两两不相交
这里写图片描述

进一步

把计算好的点放在TXT文件中用VBA读入,而后显示出来?

http://www.vbaexpress.com/forum/showthread.php?18957-Solved-VBA-and-AutoCAD-reading-points-from-a-txt-file

Public Sub DrawPointsFromTextFile() Dim fd As Long Dim sline As String Dim ar As Variant fd = FreeFile Open "C:\Temp\Coordinates.txt" For Input Access Read Shared As fd Do Until EOF(fd) Line Input #fd, sline ar = Split(sline, ",") ReDim pt(UBound(ar)) As Double Dim i As Integer For i = 0 To UBound(ar) pt(i) = CDbl(ar(i)) Next i ThisDrawing.ModelSpace.AddPoint pt Loop Close fd 
End Sub 

来自
http://www.vbaexpress.com/forum/showthread.php?2647-Solved-Text-file-to-drawing

Sub DrawFromTxt() Dim intFile As Integer Dim mPoints Dim HldPoints() As String Dim LinPlace() As String Dim MyString As String Dim OutArr As Variant Dim OutPt(0 To 2) As Double Dim OutPtA(0 To 2) As Double Dim Lend As Integer Dim LStart As Integerm Dim pointObj As AcadPoint Dim lineObj As AcadLine Dim I As Integer ReDim HldPoints(0) ReDim LinPlace(0) intFile = FreeFile Open "C:\Acad\file.txt" For Input As intFile While Not EOF(intFile) Line Input #intFile, MyString If InStr(1, MyString, " !Define key points ") > 0 Or _ InStr(1, MyString, "! Define Keypoints") > 0 Then Line Input #intFile, MyString While InStr(1, MyString, "Keypoints") = 0 If Left$(MyString, 1) = "K" Then ReDim Preserve HldPoints(UBound(HldPoints) + 1) HldPoints(UBound(HldPoints)) = Right(MyString, _ Len(MyString) - InStr(3, MyString, ",")) End If Line Input #intFile, MyString Wend End If If InStr(1, MyString, " !Define line ") > 0 Or InStr(1, _ MyString, "! Define Lines Linking") > 0 Then Line Input #intFile, MyString While InStr(1, MyString, "! element definition") = 0 And _ InStr(1, MyString, " !Element Definition") = 0 If Left$(MyString, 1) = "L" Then ReDim Preserve LinPlace(UBound(LinPlace) + 1) LinPlace(UBound(LinPlace)) = Right$(MyString, Len(MyString) - 2) End If If Not EOF(intFile) Then Line Input #intFile, MyString Else MyString = "! element definition" End If Wend End If Wend Close (intFile) 'i have the pointsFor I = 1 To UBound(HldPoints) OutArr = Split(HldPoints(I), ",") OutPt(0) = Val(OutArr(0)) OutPt(1) = Val(OutArr(1)) OutPt(2) = 0 Set pointObj = ThisDrawing.ModelSpace.AddPoint(OutPt) pointObj.Color = acCyan ThisDrawing.Regen acActiveViewport Next For I = 1 To UBound(LinPlace) OutArr = Split(LinPlace(I), ",") LStart = Val(OutArr(0)) Lend = Val(OutArr(1)) OutArr = Split(HldPoints(LStart), ",") OutPt(0) = Val(OutArr(0)) OutPt(1) = Val(OutArr(1)) OutPt(2) = 0 OutArr = Split(HldPoints(Lend), ",") OutPtA(0) = Val(OutArr(0)) OutPtA(1) = Val(OutArr(1)) OutPtA(2) = 0 Set lineObj = ThisDrawing.ModelSpace.AddLine(OutPt, OutPtA) lineObj.Color = acCyan ThisDrawing.Regen acActiveViewport Next 
End Sub 

这篇关于碰到一个问题,不解决不爽的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/675869

相关文章

SpringBoot首笔交易慢问题排查与优化方案

《SpringBoot首笔交易慢问题排查与优化方案》在我们的微服务项目中,遇到这样的问题:应用启动后,第一笔交易响应耗时高达4、5秒,而后续请求均能在毫秒级完成,这不仅触发监控告警,也极大影响了用户体... 目录问题背景排查步骤1. 日志分析2. 性能工具定位优化方案:提前预热各种资源1. Flowable

springboot循环依赖问题案例代码及解决办法

《springboot循环依赖问题案例代码及解决办法》在SpringBoot中,如果两个或多个Bean之间存在循环依赖(即BeanA依赖BeanB,而BeanB又依赖BeanA),会导致Spring的... 目录1. 什么是循环依赖?2. 循环依赖的场景案例3. 解决循环依赖的常见方法方法 1:使用 @La

Spring事务中@Transactional注解不生效的原因分析与解决

《Spring事务中@Transactional注解不生效的原因分析与解决》在Spring框架中,@Transactional注解是管理数据库事务的核心方式,本文将深入分析事务自调用的底层原理,解释为... 目录1. 引言2. 事务自调用问题重现2.1 示例代码2.2 问题现象3. 为什么事务自调用会失效3

mysql出现ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)的解决方法

《mysql出现ERROR2003(HY000):Can‘tconnecttoMySQLserveron‘localhost‘(10061)的解决方法》本文主要介绍了mysql出现... 目录前言:第一步:第二步:第三步:总结:前言:当你想通过命令窗口想打开mysql时候发现提http://www.cpp

SpringBoot启动报错的11个高频问题排查与解决终极指南

《SpringBoot启动报错的11个高频问题排查与解决终极指南》这篇文章主要为大家详细介绍了SpringBoot启动报错的11个高频问题的排查与解决,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一... 目录1. 依赖冲突:NoSuchMethodError 的终极解法2. Bean注入失败:No qu

springboot报错Invalid bound statement (not found)的解决

《springboot报错Invalidboundstatement(notfound)的解决》本文主要介绍了springboot报错Invalidboundstatement(not... 目录一. 问题描述二.解决问题三. 添加配置项 四.其他的解决方案4.1 Mapper 接口与 XML 文件不匹配

MySQL新增字段后Java实体未更新的潜在问题与解决方案

《MySQL新增字段后Java实体未更新的潜在问题与解决方案》在Java+MySQL的开发中,我们通常使用ORM框架来映射数据库表与Java对象,但有时候,数据库表结构变更(如新增字段)后,开发人员可... 目录引言1. 问题背景:数据库与 Java 实体不同步1.1 常见场景1.2 示例代码2. 不同操作

Python中ModuleNotFoundError: No module named ‘timm’的错误解决

《Python中ModuleNotFoundError:Nomodulenamed‘timm’的错误解决》本文主要介绍了Python中ModuleNotFoundError:Nomodulen... 目录一、引言二、错误原因分析三、解决办法1.安装timm模块2. 检查python环境3. 解决安装路径问题

如何解决mysql出现Incorrect string value for column ‘表项‘ at row 1错误问题

《如何解决mysql出现Incorrectstringvalueforcolumn‘表项‘atrow1错误问题》:本文主要介绍如何解决mysql出现Incorrectstringv... 目录mysql出现Incorrect string value for column ‘表项‘ at row 1错误报错

如何解决Spring MVC中响应乱码问题

《如何解决SpringMVC中响应乱码问题》:本文主要介绍如何解决SpringMVC中响应乱码问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring MVC最新响应中乱码解决方式以前的解决办法这是比较通用的一种方法总结Spring MVC最新响应中乱码解