Помогите нарезать модель на шпангоуты
Ещё раз большущее спасибо! у меня всё получилось!!! Именно то - что я хотел!
С почином. 😃
открывать дфх, убивать все сечения кроме одного, сохранять, аналогично с остальными. а если таких сечений 200, 500 и больше? пропадает день работы много рутинной работы.
Ага. конечно можно. Я думаю, что вы знаете, что для автоматизации рутинной работы компьютеры и создавались. У МАХа есть встроенный язык - maxscript. осталось только освоить maxscript и всего делов-то 😃.
Если Вы имеете ввиду, чтоб при экспорте из МАХа в каждом файле было только одно сечение, то это тоже можно сделать рутинно. До команды экспорта из МАХа выделяйте только одно сечение и выполняйте команду file-export selected.
Как-нить нарисую скриптик (если будет еще актуально), но к сожалению, катастрофически не хватет времени 😦.
З.Ы. Если знаете макросы на Visual Basic, то можно это и в corel сделать, после импорта. Там каждое сечение в виде отдельного сплайна. Хотя красивее все же в МАКсе, шоб ввели количество шпангоутов, плоскость нарезки, нажали на ОК - вуаля 300 файлов dxf.
Если кому-то, как и мне нужен чертёж Су-27, можете забрать мой здесь rcopen.com/forum/f7/topic137953
Формат картинки, но разрешение я оставил довольно хорошее, так-что его можно использовать для постройки.😃
вот нарыл скрипт для маха, чтобы порезать на проекции 😃 может кому пригодится
meshSelected = teapot() – object to create contours of
minZ = meshSelected.min.z – get min and max Z positions
maxZ = meshSelected.max.z
numLevels = 10 – the number of contours
delta = (maxZ - minZ) / (numLevels + 1) – the number of steps
for currentZ = minZ to maxZ by delta do – start loop…
(
s = section pos:[0, 0, currentZ] – create Section
max views redraw – this line is needed to get around the problem
convertToSplineShape s – convert Section to SplineShape
s.renderable = true – set to renderable
)
Раз пошла такая пьянка 😁, то вот то же самое, только с экспортом в отдельный dxf каждого из сечений:
theClasses = exporterPlugin.classes
meshSelected = teapot() -- object to create contours of
minZ = meshSelected.min.z -- get min and max Z positions
maxZ = meshSelected.max.z
numLevels = 10 -- the number of contours
delta = (maxZ - minZ) / (numLevels + 1) -- the number of steps
for currentZ = minZ to maxZ by delta do -- start loop...
(
s = section pos:[0, 0, currentZ] -- create Section
max views redraw -- this line is needed to get around the problem
convertToSplineShape s -- convert Section to SplineShape
select s
exportFile (GetDir #scene +"/exportTest"+(currentZ as string)+".dxf") #noPrompt selectedOnly:true using:theClasses[4] --export to dxf
s.renderable = true -- set to renderable
)
ухты! вот это дело!, буду пробовать. спасибо 😃
Да, интересная темка нарисовалась!😁
Народ, а никто не поможет боковой проекцией ( или схемой) Су-30 ( или модификаций типа Су-30 МК, МКИ). Пробую так сказать “конвертировать” полученный Су-27 в Су-30, хочу горб дорисовать. Естественно полученный результат обещаю выложить в виде GIF файла ( набора шпангоутов) всем на обозрение.
Вот пока что получается. Нашёл более мение понравившееся картинки в сети, обрисовал их. Сравнил, наложил на обрисованный свой Су-27. Лишнее убрал.
Можно и так оставить. Но боюсь геометрия не совсем правельная. На заводские чертежи не притендую, но хотелось бы добиться похожести поболее.
1 и 2 картинка найденные понравившиеся проекции.
3 картинка- наложил друг на друга полученные результаты после обрисовки ( чёрный - с первой картинки, зелёный - со второй, синий - с проекции 3Д модели.(потом сделаю срез, так будет точнее))
4 -картинка - получившийся винигред. Оставил фонарь со 2-й. Подогнал спину к появившемуся горбу… и от чего-то мне этот вариант не нравится 😃)))
Помогите плиз.
Раз пошла такая пьянка 😁, то вот то же самое, только с экспортом в отдельный dxf каждого из сечений:
theClasses = exporterPlugin.classes meshSelected = teapot() -- object to create contours of minZ = meshSelected.min.z -- get min and max Z positions maxZ = meshSelected.max.z numLevels = 10 -- the number of contours delta = (maxZ - minZ) / (numLevels + 1) -- the number of steps for currentZ = minZ to maxZ by delta do -- start loop... ( s = section pos:[0, 0, currentZ] -- create Section max views redraw -- this line is needed to get around the problem convertToSplineShape s -- convert Section to SplineShape select s exportFile (GetDir #scene +"/exportTest"+(currentZ as string)+".dxf") #noPrompt selectedOnly:true using:theClasses[4] --export to dxf s.renderable = true -- set to renderable )
не силен в этих кодах, но у меня вместо модели чайник появляется 😦
meshSelected = teapot() – object to create contours of
teapot это и есть чайник, его нужно заменить на свою модель
а нельзя ли разместить код скрипта с пояснениями, куда и что вставлять? буду признателен 😃
а нельзя ли разместить код скрипта с пояснениями, куда и что вставлять? буду признателен 😃
все что после – и есть коментарии, просто нада уметь на ангельском читать;)
по идее, Вам нужно всего 2 параметра из этого скрипта, meshSelected - имя объекта, numLevels - число контуров
что-то получается, но только с чайником. как мне свою модель порезать? как точно имя прописать?
meshSelected = teapot() – object to create contours of
Да, тоже понял всю прелесть скрипта, но этот чайник… рядом стоящую модель тоже режет, но это извращение, как убрать чайник и поставить вместо него мою модель?
ну елы палы, вместо teapot написать имя своего объекта, и все!
может я туплю, но это имя файла? перебрал кучу вариантов, скрипт дает ошибку:
#(3D_StudioExporterPlugin, Adobe_Illustrator, DWG_ExportExporterPlugin, DWG_Export, Wavefront_MaterialExporterPlugin, Lightscape_Layers, STL_Export, Lightscape_Material, Lightscape_Preparation, IGES_Export, Lightscape_Parameter, Lightscape_Blocks, SW3D_Exp, Wavefront_ObjectExporterPlugin, Lightscape_View, ExportHTR, JSR184Exporter, AsciiExp, VRBL_Export, DWF_Exporter)
– Error occurred in anonymous codeblock; filename: C:\CNC\3dsmax 2008\!for 3dsmax\script-porezka_new_X.ms; position: 103
– Unknown property: “max” in undefined
– Error occurred in anonymous codeblock; filename: C:\CNC\3dsmax 2008\!for 3dsmax\script-porezka_new_X.ms; position: 161
– Unknown property: “min” in undefined
– Error occurred in anonymous codeblock; filename: C:\CNC\3dsmax 2008\!for 3dsmax\script-porezka_new_X.ms; position: 188
– Unknown property: “max” in undefined
150
– Error occurred in anonymous codeblock; filename: C:\CNC\3dsmax 2008\!for 3dsmax\script-porezka_new_X.ms; position: 253
– Frame:
– No “”-“” function for undefined
– Error occurred in anonymous codeblock; filename: C:\CNC\3dsmax 2008\!for 3dsmax\script-porezka_new_X.ms; position: 0
– Unable to convert: undefined to type: Float
сам скрипт выглядит так:
theClasses = exporterPlugin.classes
meshSelected = susections.max ( ) – object to create contours of
minX = meshSelected.min.x – get min and max X positions
maxX = meshSelected.max.X
numLevels = 150 – the number of contours
delta = (maxX - minX) / (numLevels + 1) – the number of steps
for currentX = minX to maxX by delta do – start loop…
(
s = section pos:[0, 0, currentX] – create Section
max views redraw – this line is needed to get around the problem
convertToSplineShape s – convert Section to SplineShape
select s
exportFile (GetDir #scene +“/exportTest”+(currentX as string)+“.dxf”) #noPrompt selectedOnly:true using:theClasses[4] --export to dxf
s.renderable = true – set to renderable
)
нет, это имя объекта в максе:
сори за беспокойство, но здесь мы сидим чтобы хоть что-то понять, чему-то научиться.
у меня там пустое поле, клики не помогают, как задать имя объекту?
сейчас кликнул по проекции, имя Section71, их там у меня 150, как в скрипте указать, что импортить нужно все 150?
вот что получается, у меня модель уже разбита на проекции, см. картинку, запускаю скрипт экспорта и начинаются ошибки
(вживую увидеть можно здесь www.golodranci.ru/1.gif)
так если модель уже попилена, все еще проще:
theClasses = exporterPlugin.classes
for i = 1 to objects.count do
(
select objects[i]
exportFile (GetDir #scene +"/exportTest"+(i as string)+".dxf") #noPrompt selectedOnly:true using:theClasses[4] --export to dxf
)
сохраняет каждый объект в “.dxf”
да, у меня тоже не выходит. Писал название модели ( копировал вернее) даёт ошибку.
действительно, так будет работать только для максовых примитивов, можно попробовать так:
meshSelected = selected[1]
и при запуске скрипта, не забыть выделить свой объект для попила;)
так если модель уже попилена, все еще проще:
theClasses = exporterPlugin.classes for i = 1 to objects.count do ( select objects[i] exportFile (GetDir #scene +"/exportTest"+(i as string)+".dxf") #noPrompt selectedOnly:true using:theClasses[4] --export to dxf )
сохраняет каждый объект в “.dxf”
Ну чтож, так тоже работает 😃
действительно, так будет работать только для максовых примитивов, можно попробовать так:
meshSelected = selected[1]
и при запуске скрипта, не забыть выделить свой объект для попила;)
Ага, попробуем
нет, так не работает. Ругается.
работает порезка 😃 спасибо