プロジェクトへ再ロード

ファミリをプロジェクトへ再ロードした時に必ず表示されるダイアログどれを選択?となったことはありませんか?


そもそもこのダイアログは既に同名のファミリがロード先にある時に表示されます
既に同じのあるけど「上書き」「上書きしてパラメータ値も上書き」のどっちにする?と聞いています
上書きは大前提なので、同名だから(1)とか末尾に付けてどちらも保存するよ~とかの配慮はありませんwwww
①と②の違いはパラメータの値も上書くかどうかにあります

再ロードの要点は3つ

  • 値を上書きするとタイプパラメータの値とインスタンスパラメータの初期値は更新されるが、配置済みのインスタンスパラメータの値は保持されます
  • 上書きすると、ロード元のファミリと同じ作りになる
  • 上書きしても、既存のプロジェクト内のタイプは保持される

「上書き」って元ファミリがどうなる事?

プロジェクト内のファミリがロードするファミリの状態に上書きされます
例えばファミリ内に押し出しソリッドを追加したとか、パラメータを追加したとか、タイプを増やしたとかの差分が全部これからロードするファミリ側の状態になります

ただし、プロジェクト内に既にあるタイプは保持されます
⇒Aというファミリにタイプ10個を作って既にプロジェクトで使用中とします。ファミリAを別プロジェクトで改良したので、自分のプロジェクトもその内容で使いたいと思ったとします。当然別プロジェクトのモノなので、自分たちが作ったタイプは10個はありません
再ロードして上書きをすると、改良したAファミリの状態が上書きされ、プロジェクト内の10個にも同じく改良した内容が反映されます。

また既に配置されていたファミリのインスタンス部分の寸法は、元のまま維持されます
⇒既にプロジェクトに配置済みのインスタンスパラメータの値は上書きされません
例えば、”窓のFLからの高さ”がインスタンスパラメータで初期値がの800だとすると、プロジェクトに配置直後のFLからの高さは800です
その後ファミリを編集して初期値を1200に変更し、「値を上書き」を選択して再ロードしたとします
配置済みのファミリのインスタンスの値は800を保持しますが、新たにファミリを配置すると、更新した値の1200の高さに配置されます


①既存のバージョンを上書きする
  • 既にプロジェクトにあるタイプは保持されます
  • 再ロードするファミリのタイプも追加されます
  • 再ロードしたファミリの内容が上書きされます
  • パラメータの値はそのまま
    あるタイプの幅が900に設定されていて、ロードするファミリの同名のタイプの幅がが1200に設定されていても、そのままの値900を保持します
  • 新規に追加されたパラメータは元からあるタイプにも追加されます
  • 再ロードしたファミリに存在しないパラメータは元からあるファミリ側から削除されます
  • プロジェクトに配置済みのファミリのインスタンスパラメータの値は保持されます

②既存のバージョンとそのパラメータ値を上書きする
  • 既にプロジェクトにあるタイプは保持されます
  • 再ロードするファミリのタイプも追加されます
  • 再ロードしたファミリの内容が上書きされます
  • パラメータの値も上書き
    あるタイプの幅が900に設定されていて、ロードするファミリの同名のタイプの幅がが1200に設定されていたら、パラメータ値は1200に上書きされます
  • 新規に追加されたパラメータは元からあるタイプにも追加されます
  • 再ロードしたファミリに存在しないパラメータは元からあるファミリ側から削除されます
  • プロジェクトに配置済みのファミリのインスタンスパラメータの値は保持されます

値を上書きして欲しい時ってどんな時?

再ロードするのは、ファミリに変更を加えた時なので変更内容に「値」を調整した事が含まれていれば当然値の上書きが必要です
インスタンスパラメータの値を変更しても、配置済のファミリのインスタンスパラメータは変更されませんが、次に配置する時の値に影響してきます

再ロードしてもダイアログが表示されない?


プロジェクト内のファミリと差分が見つけられない時にはダイアログは表示されません
当然上書きはされていません

修正して再ロードしてもダイアログが表示されない?

ダイアログが表示されない時には上書きがされていません
私の経験では「パラメータをタイプからインスタンスに変えた」などの軽微な変更の時に認識されないことがありました
そんな時は、いったん影響のない範囲でパラメータ値を変更して再ロード!この時はもちろん値は含めず上書き☆彡





Revit2019