Тема: Расчет площади 3d solid
Увыщаемые боги AutoCad и VBA, помогите пожалуйста расчитать площадь 3d solid. Проблемы в институте! Жду ответа! спасибо!
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Программирование → VBA → Расчет площади 3d solid
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Увыщаемые боги AutoCad и VBA, помогите пожалуйста расчитать площадь 3d solid. Проблемы в институте! Жду ответа! спасибо!
> sem
Пробуй:
(defun c:3darea (/ en) (setvar "CMDECHO" 0) (setq en (car (entsel "\nВыбрать тело >> "))) (command "_.AREA" "_O" en) (setvar "CMDECHO" 1) (alert (strcat (vl-princ-to-string (getvar "AREA")) " куб. единиц рисования")) (princ) ) ;(c:3darea)
~'J'~
Спасибо вам Гуру, ты настоящий бог AutoCad!!! А у вас есть тоже самое на VBA?
Протестировал прогу...Работает с погрешностью...Нельзя ли поточнее???
> sem
Насчет гуру-то я чтой-то шибко засомневавшись...
Погрешность самого АвтоКАДа увы
А на VBA будет тоже самое поскольку кроме как
использовать SendCommand "_AREA" и т.д. иного пути не вижу
Возможно с помощью ObjectARX/C++ можно получить
заветную точность
Пока мне сей плод не по зубам...
~'J'~
> sem
Кстати, вместо:
(alert (strcat (vl-princ-to-string (getvar "AREA")) " куб. единиц рисования"))
попробуй:
(alert (strcat (rtos (getvar "AREA") 2 16) " куб. единиц рисования"))
Как там будет с точностью?
~'J'~
> sem
Попробуй где точнее:
Sub Get3dSolidArea() Dim oEnt As AcadEntity Dim oSolid As Acad3DSolid Dim varPt Dim strHndl As String Dim dblAr As Double ThisDrawing.Utility.GetEntity oEnt, varPt, "Select solid" If TypeOf oEnt Is Acad3DSolid Then Set oSolid = oEnt End If strHndl = oSolid.Handle ThisDrawing.SendCommand "_AREA" & vbCr & "_O" & vbCr & "(handent " & vbCr & Chr(34) & strHndl & Chr(34) & ")" & vbCr dblAr = CDbl(ThisDrawing.GetVariable("AREA")) MsgBox "Area of solid is: " & ThisDrawing.Utility.RealToString(dblAr, acDecimal, 16) End Sub
~'J'~
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Программирование → VBA → Расчет площади 3d solid
Форум работает на PunBB, при поддержке Informer Technologies, Inc