Data exchange from Rhino Grasshopper to REVIT


지금은 다이나모가 생겨서 라이노나 그라소퍼의 결과물을 레빗으로 옮겨서 작업하기가 편해졌지만, 예전에는 다이나모 이외에도 많은 개발자들이 비슷한 연구를 했었다. 아래의 린크에서 다이나모 이전에 사용했었던 툴들을 알아보자. 리스트들 중에서 아직도 Jon Mirtschin의 Geometry Gym의 경우에는 라이노의 결과물을 레빗뿐만 아니라 IFC파일로 호환해서 다른 여러 BIM소프트웨어에 지원이 가능해 여전히 유용하다.


Resource: http://www.grasshopper3d.com/group/gh-revit


LMNts (Super Lyrebird ) ; http://lmnts.lmnarchitects.com/bim/superb-lyrebird/


Hiroshi Jacobs (Chameleon); http://www.hijac-creative.com/research/chameleon/


Nathan Miller (Revit API); http://wiki.theprovingground.org/revit-api


Tim Meador (Hummingbird); http://ghhummingbird.wordpress.com/


Jon Mirtschin (IFC/Geometry Gym ); http://geometrygym.blogspot.co.at/


Mohammad Rahmani Asl; http://mrahmaniasl.blogspot.co.at/


Simone Garagnani (Green Spider); Link no longer exist


CASE (Import OpenNURBS to Revit ); http://www.case-inc.com/apps/content/import-opennurbs-3dmfile-data


Grevit; http://www.food4rhino.com/project/grevit

Posted by Parametric Culture

라이노의 Geometry를 레빗에서 도면화 하는방법 (옵션)


건물이 복잡해질수록 레빗에서 모델링을 하는 것보다는 Max, Maya또는 Rhino에서 모델링한 Geometry를 레빗으로 가져와서 도면화하는 것이 효율적일 때가 많다. 

여기서는 라이노에서 만든 모델을 레빗에서 도면화하는 작업의 테스트 옵션을 소개한다. 보다 더 좋은 방법이 있다면 저희에게도 꼭 좀 알려주세요 :)




Posted by Parametric Culture

Project Template Location


C:\ProgramData\Autodesk\RVT 2015\Templates


Family Template Location


C:\ProgramData\Autodesk\RVT 2015\Family Templates\English


1.  UniformatClassifications.txt - C:\Program Files\Autodesk\<Revit Version>\Program

File houses the Uniformat Assembly Codes, and the location is fixed; it cannot be moved or specified in a library location [i.e. on a server].  If you wish to edit this file in one location, it is recommended to keep a copy on a server location, and create a batch file to copy & replace the specific file on the user workstation.  This file is read once at the Revit application launch.

2.  Revit.ini - C:\Program Files\Autodesk\<Revit Version>\Program

Contains the variables, paths, recent files, worksharing paths and more for each version of Revit.  For some additional tips on editing this file see one of our previous posts here.

3.  RevitKeynotes_Imperial_2004.txt - C:\ProgramData\Autodesk\<Revit Version>\Imperial Library

Contains the full set of keynotes which can be assigned to elements in the Type Properties.  This file can be specified in the project or template, and modified under Annotate > Tag > Keynote Settings.

4.  Journal files - C:\Program Files\Autodesk\Revit Architecture 2011\Journals

Journal files capture all actions from the current Revit session.  For additional information please see the 4 part series here: Part 1, Part 2, Part 3 & Part 4.

5.  Worksharing Log File  Central file location _”backup” folder

Named after the central file, with a .SLOG extension.  For worksharing-enabled projects all of the central file and user interactions are recorded in this log file.  For some additional information please see the previous post here.

6.  Exportlayers-dwg-AIA.txt  C:\ProgramData\Autodesk\RAC 2011

Export Layers and Properties settings are stored in the layer mapping file.  This is used when exporting a project to DWG or DGN for example.  For additional information reference the Help Documentation here.

7.  UIState.dat - C:\Users\%username%\AppData\Local\Autodesk\Revit\<Revit Version>

Stores user specific customizations to the user interface such as the ribbon and quick access toolbar.  For additional information see the Help documentation hereor if you need to reset this file see instructions below:

Resetting the Autodesk Revit 2011 user interface

8.  KeyboardShortcuts.xml -C:\Users\%username%\AppData\Local\Autodesk\Revit\<Revit Version>

After any change is made to the User Interface > Keyboard Shortcuts, this user-specific file is created to maintain the shortcut customizations.  For additional information reference the technical solution here.

9.  Shared Parameters Text file  User Defined

This text files stores the parameters added to families or project files.   This file is not actively linked, and should never be manually edited.  Additional information is available here and here.

10.  Revit Server Log Files  - C:\logfiles

If using Revit Server, these log files are very useful should you run into any troubleshooting issues.

Posted by Parametric Culture

Some Revit component families display above the view cut plane

!!REVIT 패밀리중 일부가 Cut Plane위의 패밀리인데도 Plan뷰에서 계속 나타날때 해결법!!



Issue:

You notice when placing Revit component families some display above the view cut plane while others do not.

레빗 컴포넌트 패밀리의 일부가 컷플래인 위에 있는데도 플랜에서 자꾸 보여지는 문제. 

Solution:

When a family is located above the View Range > Cut Plane but falls below the Top Plane, the family category will determine whether it is visible or not.

패밀리가 뷰범위에서 컷플래인보다 높이 위치하며 탑플래인보다는 아래에 위치한 경우 패밀리 카테고리가 어떤것을 보여줄지 결정하게 된다. 

 

The following component family categories will appear in the view even when above the cut plane:

아래의 컴포넌트 패밀리들은 뷰레인지에서 탑플래인보다는 낮고 컷플래인보다 높은 곳에 위치하면 플랜뷰에 나타나게 된다.

Casework
Generic Model
Structural Columns
Windows

In the following example the Generic Model family is above the cut plane but falls below the top plane:

아래의 예제에서 Generic Model 패밀리가 컷플래인과 탑플래인 사이에 위치하고 있는데, 오른쪽 그림에서와 같이 플랜뷰에서 나타나게 된다.

 

The Generic Model family category will appear in the floor plan view.  If the family category is changed > Lighting Fixtures, the family will not be visible in the floor plan view:

Generic Model 패밀리 카테고리는 플랜뷰에서 나타나는 습성이 있기 때문에 패밀리의 카테고리를 강제로 Lighting Fixtures로 바꿨을 경우 플랜에서 나타나지 않는것을 볼수 있다.

 

다른 방법으로는 Top Plane과 Cut Plane의 높이값을 정확히 같은 높이로 지정한다면 문제가 해결 될 수 있다.

Posted by Parametric Culture

Revit을 어느정도 사용한 고급 유저의 경우 패밀리 파일을 직접 만들어서 사용하게 된다.


이 때, Formular를 사용하여 패밀리를 Parametric으로 만들어 사용하면 유용할 때가 많다.

아래의 블로그에서 Formular의 종류와 사용법에 대해서 알아보자.



Valid Formula Syntax and Abbreviations


Formulas support the following arithmetic operations: addition, subtraction, multiplication, division,exponentiation, logarithms, and square roots. Formulas also support the following trigonometric functions:

sine, cosine, tangent, arcsine, arccosine, and arctangent.

The valid formula abbreviations for arithmetic operations and trigonometric functions are


■ Addition— +

■ Subtraction— -

■ Multiplication—*

■ Division—/

■ Exponentiation—^: x^y, x raised to the power of y

■ Logarithm—log

■ Square root—sqrt: sqrt(16)

■ Sine—sin

■ Cosine—cos

■ Tangent—tan

■ Arcsine—asin

■ Arccosine—acos

■ Arctangent—atan

■ e raised to an x power—exp

■ Absolute Value—abs


You can enter integers, decimals, and fractional values in formulas, using normal mathematical syntax, as shown in the examples below:


■ Length = Height + Width + sqrt(Height*Width)

■ Length = Wall 1 (11000mm)+ Wall 2 (15000mm)

■ Area = Length (500mm) * Width (300mm)

■ Volume = Length (500mm) * Width (300mm) * Height (800 mm)

■ Width = 100m * cos(angle)

■ x = 2*abs(a) + abs(b/2)

■ ArrayNum = Length/Spacing


Parameter names in formulas are case sensitive. For example, if a parameter name begins with a capital letter, such as Width, you must enter it in the formula with an initial capital letter. If you enter it in a formula using lower-case letters instead, for example, width * 2, the software will not recognize the formula.


Conditional Statements in Formulas


You can use conditional statements in formulas to define actions in a family that depend on the state of other parameters. With conditional statements, the software enters values for a parameter based on whether a specified condition is satisfied. Conditional statements are useful in certain circumstances; however, they make families more complex and should be used only when necessary.


For most type parameters, conditional statements are unnecessary because the type parameter itself is like a conditional statement: If this is the type, then set this parameter to a specified value. Instance parameters are a more productive place to use conditional statements, particularly when they are used to set a parameter that does not vary continuously.


Syntax for Conditional Statements

A conditional statement uses this structure: IF (<condition>, <result-if-true>, <result-if-false>) This means that the values entered for the parameter depend on whether the condition is satisfied (true) or not satisfied (false). If the condition is true, the software returns the true value. If the condition is false, it returns the false value.


Conditional statements can contain numeric values, numeric parameter names, and Yes/No parameters. You can use the following comparisons in a condition: <, >, =. You can also use Boolean operators with a conditional statement: AND, OR, NOT. Currently, <= and >= are not implemented. To express such a comparison, you can use a logical NOT. For example, a<=b can be entered as NOT(a>b).


The following are sample formulas that use conditional statements.


Simple IF: =IF (Length < 3000mm, 200mm, 300mm)

IF with a text parameter: =IF (Length > 35', “String1”, “String2”)

IF with logical AND: =IF ( AND (x = 1 , y = 2), 8 , 3 )

IF with logical OR: =IF ( OR ( A = 1 , B = 3 ) , 8 , 3 )

Embedded IF statements: =IF ( Length < 35' , 2' 6" , IF ( Length < 45' , 3' , IF ( Length < 55' , 5' , 8' ) ) )

IF with Yes/No condition: =Length > 40 (Note that both the condition and the results are implied.)


Examples of Conditional Statement Usage


Typical uses for conditional statements in formulas include calculating array values and controlling an element’s visibility based on a parameter value. For example, you can use conditional statements to


■ Prevent an array parameter from taking a value less than 2.

In Revit Architecture, arrays can only have an integer value of 2 or greater. In some situations, it may be useful to create a conditional formula that maintains an array parameter of 2 even if the calculated value is 1 or 0. With such a formula, if the calculated array value is 2 or greater, the formula retains the value. However, if the calculated value is 1 or 0, the formula changes the value to 2. 


Formula: Array number = IF (Arrayparam < 2, 2, Arrayparam)


■ Make muntins visible only when the number of window lights is greater than 1.

For example, if you have a Lights parameter that you want to use to control the visibility of muntin geometry, you can create a Yes/No parameter like MuntinVis, and assign it to the Visible parameter in the Element Properties dialog of the muntin geometry. Because the MuntinVis parameter is a Yes/No (or Boolean) operation, both the condition (IF) and the results are implied. In this example, when the condition is met (true), the MuntinVis parameter value is selected, and the muntin geometry is visible.

Conversely, when the condition is not met (false), the MuntinVis parameter is cleared, and the muntin geometry is not visible. 


Formula: MuntinVis = Lights > 1

Posted by Parametric Culture
상황 1.  구조사무실에서 받은 보 list대로 Structure Beam Family를 만들어야 하는데, 
보 종류가 180가지일 때 간편하게 만들 수 있는 방법은?

상황 2. 책상 패밀리가 필요해서 로드를 했더니 project browser에 유형(type)이 3251가지가 
뜰 때, 게다가 이런 가구를 10개 더 넣어야 할 때. ㅎㅎㅎ
특정 패밀리의 필요한 유형(Type)만 로드하는 방법은?


TIP!
.rfa파일과 같은 이름의 .txt파일이 동일한 폴더 안에 있을 때, .txt파일은 .rfa의 파라메터를 정의한다. 이는 프로젝트에 .rfa를 로드할 때  type을 고를 수 있는 창이 뜨면서 실행된다.(그림1 참조)

그림.1 패밀리의 특정 TYPE만 로드하는 장면

그럼 구체적으로 작업을 하는 방법을 알아보자.

1.먼저 작업하고 싶은 패밀리를 open한다.(프로젝트에 Load 하는 것이 아니다)
2.export에 family type을 선택해서 해당 패밀리와 같은 폴더에 저장한다. 
3..txt를 엑셀에서 open한다.


4.순서대로 옵션이 나타나는데 구분기호에 쉼표를 반드시 체크해주고 다음을 눌러서 엑셀시트로 진입한다.
5.목표로하는 작업을 일반 엑섹 작업하듯이 작업한다.
6.파일 저장은 cvs(쉼표로 구분)로한다. 
7.csv파일의 확장자를 .txt로 수정한다.(윈도우 탐색기에서 "보기-파일확장자명"을 체크하면 확장자를 수정할 수 있다)

추가. 이 방법으로 엑셀을 패밀리와 연동하여 작업을 진행하는 도중에 몇가지 보 유형이을 추가할 때. 혹은 다시 전체 패밀리 이름 체계를 수정하고자 할 때.

1. 위에서 본 방법 처럼 다시 txt파일로 내보내고 엑셀에서 읽어들인다. 
2. 보 이름을 원하는데로 수정하고 cvs를 txt로 변경한 다음 다시 레빗에서 로드한다. 
3. 이때는 모든 요소를 다시 로드하게 되면, 기존에 존재하던 레빗 유형들이 1:1 (엑셀 셀 순서기반으로) 교체된다. 

더 좋은 방법이나 잘못된 내용에 대한 제보는 언제나 환영합니다~ 


Posted by 알 수 없는 사용자