Sketchup 용 플러그인 작업을 시작했으며 도움이 필요했습니다. 현재이 플러그인을 사용하면 폴더를 선택한 다음 폴더의 모든 DXF 또는 DWG 파일을 하나씩 열어 별도의 .skp 파일로 저장할 수 있습니다. 이것은 .skp 파일을 DXF 또는 DWG 파일을 사용하지 않는 다른 3D 프로그램으로 가져와야하기 때문에 만들어졌습니다. Sketchup API 및 크기 조정 모델
model.import filename, false
outputname = File.basename(filename) + ".skp"
model.save outputname
model.entities.clear!
지금 나열된 코드는 for 루프에 포함되어 있습니다 : 여기가 스크립트에 더 많은이지만,
수입하고 저장하는 것이 그것의 '주력'부분이다. 이것은 각 모델이 너무 길어지는 것을 제외하고는 완벽하게 작동합니다. 사용자에게 '축척 비율'을 묻는 메시지를 표시하고 모델을 축소하는 데 사용해야합니다.
지금, 나는 코드의 '작업'부분 전에 다음을 수행 한 :
scalePromptResult = UI.messagebox "Woudl you like to adjust the scale for ALL models being converted?", MB_YESNO
scaleFactor = 0
if scalePromptResult == 6
prompts = ["Please enter the scale factor you want to use"]
defaults = [0]
inputArray = UI.inputbox prompts, defaults, "Scale Factor"
scaleFactor = inputArray[0]
end
이 배율 인수를 입력하라는 메시지가 표시됩니다. 그게 내가 아는 전부 야. 나는 이것을 모두 정확하게 부르고있다. 나는 Objective C와 .Net에 더 익숙하다. 주어진 값을 적절한 숫자 값으로 변환하기 위해 필요한 다른 것이 있습니까? 이제
, 내가 올바른, 아마도 사람이 내 코드에서 작동하지 않는 이유를 말해 수있을 수도있는 경우 :
If scaleFactor > 0 then
transform = Geom::Transformation.new([scaleFactor, scaleFactor, scaleFactor])
model.entities.transform_entities(transform, model.entities)
end
감사합니다!
"작동하지 않음"은 무엇입니까? 오류가 발생 했습니까? – thomthom
아무 반응이 없습니다. 'If scaleFactor> 0 then' 부분에 도달하면 스크립트가 멈 춥니 다. –