SketchUp Make v17/Ruby > Group의 Width, Height, Depth[mm]를 표시하는 구현
SketchUp Make v17.1.173
MacOS X El Capitan
Group의 크기를 얻고 싶습니다.
google 검색하고 마침내 다음 방법을 찾았습니다.
Vector3d - SketchUp Ruby API Google Developers
ww. s t t pd cs. 코 m / 드 cs / 오우 r도 c / 보롱
이 페이지 번역
You can get the bounding box on a model. model = Sketchup.active_model model_bb = model.bounds # Or you can get the ... first_entity.bounds # Or you can create an empty bounding box of your own. boundbox = Geom::BoundingBox.new...
다만, 상기의 링크처는 이미 없어지고 있다.
우선 캐시로 기재된 코드(상기의 문자열)를 참고로 했다.
measureGroup161224.rb
require 'sketchup.rb'
def measure_group()
model = Sketchup.active_model
my_selection = model.selection
my_selection.each do |ent|
if ent.is_a? Sketchup::Group
bnd = ent.bounds
print("W:",bnd.width)
print(",H:",bnd.height)
print(",D:",bnd.depth,"\n")
end
end
end
큐브를 만들고 그룹화합니다.
위의 스크립트를 Ruby 콘솔에서 읽습니다.
(스크립트 위치는 여기 참조)
> load "measureGroup161224.rb"
true
Group으로 한 오브젝트를 선택 후 measure_group()을 실행한다.
실행
> measure_group()
W:3000.000000mm,H:1000.000000mm,D:4000.000000mm
#<Sketchup::Selection:0x007fcfabe8d208>
작성한 사이즈를 취득할 수 있었다.
개체? 를 회전하고 있는 경우는
local_bounds
(을)를 사용해, 라고 하는 메모를 본 생각도 한다.이번은 bounds라고 하는 것으로 사이에 맞았다.
측정 2
오늘, 입체 시프트 스크립트를 사용해 작성한 laundry rack의 안 1.
각각이 Group화한 객체이므로 잘 움직이면 NIC direct에 주문하는 정보를 쉽게 얻을 수 있을 것이다.
모든 Group을 선택하고
measure_group()
시도했습니다.결과
> measure_group()
W:900.000000mm,H:20.000000mm,D:20.000000mm
W:650.000000mm,H:20.303132mm,D:20.305539mm
W:20.000000mm,H:900.000000mm,D:20.000000mm
W:20.000000mm,H:20.000000mm,D:900.000000mm
W:650.000000mm,H:20.000000mm,D:20.000000mm
W:20.000000mm,H:900.000000mm,D:20.000000mm
W:20.000000mm,H:20.000000mm,D:650.305575mm
W:900.000000mm,H:20.000000mm,D:20.000000mm
W:20.000000mm,H:900.000000mm,D:20.000000mm
W:20.000000mm,H:20.000000mm,D:650.000000mm
W:20.000000mm,H:20.000000mm,D:900.000000mm
#<Sketchup::Selection:0x007fcfabe8d208>
조금 오차가 나오고 있지만, 원하는 정보를 쉽게 얻을 수 있게 되었다.
(오차는 모델링시의 실패에 기인할 것이다)
900mm와 650mm로 통일함으로써 재이용성을 검토하고 있다.
혹시 Borg Sensor System1 측정 장치의 프레임으로 사용할지도 모르기 때문에.
마그네트론 스캐너라든지(원리를 생각할 필요가 있다).
측정 3
다수의 직육면체로 구성되는 구조물의 사이즈도 일람 취득할 수 있다.
다만, 회전하고 있는 Group은 사이즈 취득에 실패하는 것 같다(값이 올바르게 출력되지 않는다).
링크
다음 스크립트는 더보기 쉬운 결과를 생성합니다.
ぃ tp // 이 m / 쉽게 k / ms / 8 69234f96178c2d48f7
Reference
이 문제에 관하여(SketchUp Make v17/Ruby > Group의 Width, Height, Depth[mm]를 표시하는 구현), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/7of9/items/17be650094657acf520c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)