(57)【要約】【課題】３次元造形物の形状が所定の形状か否かを判定するための演算処理の負荷を小さくする。【解決手段】形状判定装置１００は、３次元造形物の３次元モデルと所定の形状の３次元モデルとの向きおよび位置を揃える正規化処理部５３と、３次元造形物のｎ層（ｎは２以上の整数）のスライスモデルおよび所定の形状のｎ層のスライスモデルを作成するスライスモデル作成部５６と、所定の形状のｍ層目（ｍ＝１〜ｎの整数）のスライスモデルに対する３次元造形物のｍ層目のスライスモデルの一致率を判定するスライスモデル判定部５９と、スライスモデル判定部５９の判定結果に基づいて、所定の形状の３次元モデルに対する３次元造形物の３次元モデルの一致率を算出する一致率算出部６０と、算出された一致率が所定の閾値以上の場合、３次元造形物の形状が所定の形状であると判定する形状判定部６１と、を備えている。【選択図】図３
2016124230.tif 000002
【特許請求の範囲】
【請求項１】
３次元造形物の形状が所定の形状であるか否かを判定する形状判定装置であって、
前記３次元造形物の３次元モデル、および、前記所定の形状の３次元モデルを記憶する記憶部と、
前記記憶部に記憶された前記３次元造形物の３次元モデル、および、前記所定の形状の３次元モデルの互いの向きと位置を揃える正規化処理部と、
前記正規化処理部によって向きと位置を揃えた前記３次元造形物の３次元モデル、および、前記所定の形状の３次元モデルを所定の間隔でｎ層（ただし、ｎは２以上の整数）にスライスして、前記３次元造形物のｎ層のスライスモデル、および、前記所定の形状のｎ層のスライスモデルを作成するスライスモデル作成部と、
前記スライスモデル作成部によって作成された前記３次元造形物のｍ層目（ただし、ｍ＝１〜ｎの整数）のスライスモデルと、前記所定の形状のｍ層目のスライスモデルとを対比し、前記所定の形状のｍ層目のスライスモデルに対する前記３次元造形物のｍ層目のスライスモデルの一致率を判定し、または、前記３次元造形物のｍ層目のスライスモデルが前記所定の形状のｍ層目のスライスモデルに一致するか否かを判定するスライスモデル判定部と、
前記スライスモデル判定部の判定結果に基づいて、前記所定の形状の３次元モデルに対する前記３次元造形物の３次元モデルの一致率を算出する一致率算出部と、
前記一致率算出部によって算出された一致率が所定の閾値以上の場合、前記３次元造形物の形状が前記所定の形状であると判定する形状判定部と、
を備えた、３次元造形物の形状判定装置。
【請求項２】
前記スライスモデル作成部によって作成された前記３次元造形物のｍ層目のスライスモデルの輪郭線、および、前記所定の形状のｍ層目のスライスモデルの輪郭線を平滑化する平滑化処理部を備え、
前記スライスモデル判定部は、前記平滑化処理部によって平滑化された前記３次元造形物のｍ層目のスライスモデルの輪郭線と、前記平滑化処理部によって平滑化された前記所定の形状のｍ層目のスライスモデルの輪郭線とを対比することにより、前記所定の形状のｍ層目のスライスモデルに対する前記３次元造形物のｍ層目のスライスモデルの一致率を判定し、または、前記３次元造形物のｍ層目のスライスモデルが前記所定の形状のｍ層目のスライスモデルに一致するか否かを判定する、請求項１に記載された３次元造形物の形状判定装置。
【請求項３】
前記平滑化処理部は、ガウス関数を用いて、前記３次元造形物のｍ層目のスライスモデルの輪郭線、および、前記所定の形状のｍ層目のスライスモデルの輪郭線を平滑化する、請求項２に記載された３次元造形物の形状判定装置。
【請求項４】
前記正規化処理部は、前記所定の形状の３次元モデルの向きと位置を、前記３次元造形物の３次元モデルの向きと位置に一致するように、前記所定の形状の３次元モデルを回転、および、移動させる、請求項１から３までの何れか一つに記載された３次元造形物の形状判定装置。
【請求項５】
前記スライスモデル判定部は、前記３次元造形物のｍ層目のスライスモデルの輪郭線を分割することにより得られる複数の線分のうちの一の線分と、前記所定の形状のｍ層目のスライスモデルの輪郭線を前記３次元造形物のｍ層目のスライスモデルの輪郭線における分割に対応するように分割することにより得られる複数の線分のうち、前記一の線分に対応する他の一の線分とを対比し、前記一の線分と前記他の一の線分との間の最大距離が所定の距離未満の場合、前記一の線分は、前記他の一の線分に一致していると判定し、一致したと判定された線分の数をｍ層目のスライスモデルに含まれる前記線分の総数で割った値を、ｍ層目のスライスモデルの一致率とする、請求項１から４までの何れか一つに記載された３次元造形物の形状判定装置。
【請求項６】
前記スライスモデル判定部は、前記所定の形状のｍ層目のスライスモデルに対する前記３次元造形物のｍ層目のスライスモデルの一致率を判定し、
前記一致率算出部は、前記所定の形状の３次元モデルに対する前記３次元造形物の３次元モデルの一致率として、１〜ｎ層目の一致率を合算した値をｎで割った値を算出する、請求項１から５までの何れか一つに記載された３次元造形物の形状判定装置。
【請求項７】
請求項１から６までの何れか一つに記載された３次元造形物の形状判定装置を備えた、３次元造形装置。
【請求項８】
前記形状判定部によって、前記３次元造形物の形状が前記所定の形状であると判定された場合、前記３次元造形物を造形することを禁止する禁止部を備えた、請求項７に記載された３次元造形装置。
【請求項９】
造形する前記３次元造形物に関する情報を表示するモニタを備え、
前記禁止部は、前記形状判定部によって、前記３次元造形物の形状が前記所定の形状であると判定された場合、前記モニタに禁止メッセージを表示する、請求項８に記載された３次元造形装置。
【請求項１０】
前記所定の閾値には、第１の閾値と、前記第１の閾値よりも値が小さい第２の閾値とが含まれ、
前記形状判定部は、前記一致率算出部によって算出された一致率が前記第１の閾値以上であるか否か、および、前記第２の閾値以上であるか否かを判定し、
造形する前記３次元造形物に関する情報を表示するモニタと、
前記形状判定部によって、前記一致率算出部によって算出された一致率が前記第２の閾値以上かつ前記第１の閾値未満であると判定された場合、前記モニタに警告メッセージを表示する警告部と、
前記形状判定部によって、前記一致率算出部によって算出された一致率が前記第１の閾値以上であると判定された場合、前記３次元造形物を造形することを禁止する禁止部と、
を備えた、請求項７に記載された３次元造形装置。
【請求項１１】
前記所定の形状には、第１の所定の形状と、第２の所定の形状とが含まれ、
前記所定の閾値には、第１の閾値と、前記第１の閾値よりも値が小さい第２の閾値とが含まれ、
前記形状判定部は、前記一致率算出部によって算出された一致率が前記第１の閾値以上と判定された場合、前記３次元造形物の形状は前記第１の所定の形状であると判定し、前記一致率が前記第２の閾値以上かつ前記第１の閾値未満であると判定された場合、前記３次元造形物の形状は前記第２の所定の形状であると判定し、前記一致率が前記第２の閾値未満であると判定された場合、前記３次元造形物の形状は、前記第１の所定の形状および前記第２の所定の形状ではないと判定する、請求項７に記載された３次元造形装置。
【請求項１２】
前記３次元造形物を第１の間隔ごとにスライスした断面形状に対応した形状の樹脂層を順次積層することで前記３次元造形物を造形し、
前記スライスモデル作成部は、前記正規化処理部によって向きと位置を揃えた前記３次元造形物の３次元モデル、および、前記所定の形状の３次元モデルを、前記第１の間隔よりも間隔が広い第２の間隔でスライスする、請求項７から１１までの何れか一つに記載された３次元造形装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元造形物の形状判定装置、および、それを備えた３次元造形装置に関する。
【背景技術】
【０００２】
従来から、３次元造形物を造形する３次元造形装置が知られている。この種の３次元造形装置では、コンピュータプログラムを用いて、３次元造形物を造形するための３次元モデルのデータを作成している（特許文献１参照）。そして、作成した３次元モデルのデータを用いて所望の３次元造形物を造形している。
【０００３】
近年、３次元造形装置を使用して、拳銃などの危険物を造形することが問題視されている。そのため、３次元造形装置を使用して危険物を造形することができないように規制する制御部（以下、規制制御部という。）を３次元造形装置に組み込む開発がなされている。
【０００４】
この種の規制制御部としては、例えば、３次元モデルのデータを使用したものがある。具体的には、規制制御部は、危険物の３次元モデルのデータ、および、造形しようとする３次元造形物の３次元モデルのデータを記憶している。そして、規制制御部は、３次元造形物の３次元モデルのデータと、危険物の３次元モデルのデータとを対比し、それらのデータが一致した場合、３次元造形物の形状が、拳銃などの危険物の形状であると判定する（以下、危険物判定という）。規制制御部は、３次元造形物の形状が危険物の形状であると判定した場合、３次元造形装置がその３次元造形物を造形することを禁止する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−９６４２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述したような規制制御部では、造形しようとする３次元造形物の３次元モデルのデータと危険物の３次元モデルのデータとを直接比較することで、３次元造形物の危険物判定をしている。３次元モデルのデータは情報量が多いため、規制制御部による危険物判定が複雑になると共に、危険物判定を行う時間が長くなることがあった。
【０００７】
本発明はかかる点に鑑みてなされたものであり、その目的は、３次元造形物の形状が所定の形状か否かを判定するための演算処理の負荷が小さい３次元造形物の形状判定装置、および、それを備えた３次元造形装置を提供することである。
【課題を解決するための手段】
【０００８】
本発明に係る３次元造形物の形状判定装置は、３次元造形物の形状が所定の形状であるか否かを判定する形状判定装置である。前記３次元造形物の形状判定装置は、記憶部と、正規化処理部と、スライスモデル作成部と、スライスモデル判定部と、一致率算出部と、形状判定部とを備えている。前記記憶部は、前記３次元造形物の３次元モデル、および、前記所定の形状の３次元モデルを記憶する。前記正規化処理部は、前記記憶部に記憶された前記３次元造形物の３次元モデル、および、前記所定の形状の３次元モデルの互いの向きと位置を揃える。前記スライスモデル作成部は、前記正規化処理部によって向きと位置を揃えた前記３次元造形物の３次元モデル、および、前記所定の形状の３次元モデルを所定の間隔でｎ層（ただし、ｎは２以上の整数）にスライスして、前記３次元造形物のｎ層のスライスモデル、および、前記所定の形状のｎ層のスライスモデルを作成する。前記スライスモデル判定部は、前記スライスモデル作成部によって作成された前記３次元造形物のｍ層目（ただし、ｍ＝１〜ｎの整数）のスライスモデルと、前記所定の形状のｍ層目のスライスモデルとを対比し、前記所定の形状のｍ層目のスライスモデルに対する前記３次元造形物のｍ層目のスライスモデルの一致率を判定し、または、前記３次元造形物のｍ層目のスライスモデルが前記所定の形状のｍ層目のスライスモデルに一致するか否かを判定する。前記一致率算出部は、前記スライスモデル判定部の判定結果に基づいて、前記所定の形状の３次元モデルに対する前記３次元造形物の３次元モデルの一致率を算出する。前記形状判定部は、前記一致率算出部によって算出された一致率が所定の閾値の場合、前記３次元造形物の形状が前記所定の形状であると判定する。
【０００９】
本発明の３次元造形物の形状判定装置によれば、３次元造形物のｍ層目のスライスモデルと、所定の形状のｍ層目のスライスモデルとをそれぞれ比較することで、３次元造形物が所定の形状であるか否かを判定している。スライスモデルは、２次元のモデルのため、３次元モデルと比較して単純な形状である。よって、本発明では、３次元造形物の３次元モデルと所定の形状の３次元モデルとを直接比較して３次元造形物が所定の形状であるか否かを判定する場合と比べて、演算処理の負荷を小さくすることができる。
【００１０】
本発明の好ましい一態様によれば、前記スライスモデル作成部によって作成された前記３次元造形物のｍ層目のスライスモデルの輪郭線、および、前記所定の形状のｍ層目のスライスモデルの輪郭線を平滑化する平滑化処理部を備えている。前記スライスモデル判定部は、前記平滑化処理部によって平滑化された前記３次元造形物のｍ層目のスライスモデルの輪郭線と、前記平滑化処理部によって平滑化された前記所定の形状のｍ層目のスライスモデルの輪郭線とを対比することにより、前記所定の形状のｍ層目のスライスモデルに対する前記３次元造形物のｍ層目のスライスモデルの一致率を判定し、または、前記３次元造形物のｍ層目のスライスモデルが前記所定の形状のｍ層目のスライスモデルに一致するか否かを判定する。
【００１１】
例えば、所定の形状を少し変更したものを３次元造形物とした場合、所定の形状を少し変更した３次元造形物であっても所定の形状であると判定したいにも関わらず、その３次元造形物が所定の形状ではないと判定するおそれがある。しかし、上記態様によれば、３次元造形物の各層のスライスモデルの輪郭線、および、所定の形状の各層のスライスモデルの輪郭線を平滑化して、それぞれの輪郭線同士を対比することによって、３次元造形物のスライスモデルと、所定の形状のスライスモデルとの間で多少の形状の不一致があっても、同じ形状として扱うことができる。よって、３次元造形物のスライスモデルと、所定の形状のスライスモデルとの間で多少の形状の不一致がある場合であっても、３次元造形物の形状が所定の形状であると判定することができる。
【００１２】
本発明の好ましい他の一態様によれば、前記平滑化処理部は、ガウス関数を用いて、前記３次元造形物のｍ層目のスライスモデルの輪郭線、および、前記所定の形状のｍ層目のスライスモデルの輪郭線を平滑化する。
【００１３】
上記態様によれば、３次元造形物のｍ層目のスライスモデルの輪郭線、および、所定の形状のｍ層目のスライスモデルの輪郭線をより確実に平滑化することができる。
【００１４】
本発明の好ましい他の一態様によれば、前記正規化処理部は、前記所定の形状の３次元モデルの向きと位置を、前記３次元造形物の３次元モデルの向きと位置に一致するように、前記所定の形状の３次元モデルを回転、および、移動させる。
【００１５】
上記態様によれば、３次元造形物の３次元モデルの向きと位置を変更することなく、所定の形状の３次元モデルの向きと位置を変更しているため、３次元造形物の３次元モデルの向きと位置、および、所定の形状の３次元モデルの向きと位置を共に変更する場合と比較して、処理時間を短縮することができる。新たに造形用のスライスモデルを作成することなく、スライスモデル作成部によって作成された３次元造形物のスライスモデルを使用して、３次元造形物を造形することができる。よって、３次元造形物を造形する際、造形用のスライスモデルを新たに作成することを省略することができるため、造形時間を短縮することができる。
【００１６】
本発明の好ましい他の一態様によれば、前記スライスモデル判定部は、前記３次元造形物のｍ層目のスライスモデルの輪郭線を分割することにより得られる複数の線分のうちの一の線分と、前記所定の形状のｍ層目のスライスモデルの輪郭線を前記３次元造形物のｍ層目のスライスモデルの輪郭線における分割に対応するように分割することにより得られる複数の線分のうち、前記一の線分に対応する他の一の線分とを対比し、前記一の線分と前記他の一の線分との間の最大距離が所定の距離未満の場合、前記一の線分は、前記他の一の線分に一致していると判定し、一致したと判定された線分の数をｍ層目のスライスモデルに含まれる前記線分の総数で割った値を、ｍ層目のスライスモデルの一致率とする。
【００１７】
上記態様によれば、３次元造形物のｍ層目のスライスモデルの一の線分と、所定の形状のｍ層目のスライスモデルの他の一の線分とを比較することで、ｍ層目のスライスモデルの一致率を算出することができる。
【００１８】
本発明の好ましい他の一態様によれば、前記スライスモデル判定部は、前記所定の形状のｍ層目のスライスモデルに対する前記３次元造形物のｍ層目のスライスモデルの一致率を判定する。前記一致率算出部は、前記所定の形状の３次元モデルに対する前記３次元造形物の３次元モデルの一致率として、１〜ｎ層目の一致率を合算した値をｎで割った値を算出する。
【００１９】
上記態様によれば、３次元造形物のｍ層目のスライスモデルにおける所定の形状のｍ層目のスライスモデルに対する一致率を使用することで、３次元造形物の３次元モデルの所定の形状の３次元モデルに対する一致率を容易に算出することができる。
【００２０】
本発明の３次元造形装置は、上述した何れかに記載された３次元造形物の形状判定装置を備えている。
【００２１】
本発明にかかる３次元造形装置によれば、上述した何れかに記載された３次元造形物の形状判定装置を備えた３次元造形装置を提供することができる。
【００２２】
本発明の好ましい他の一態様によれば、前記形状判定部によって、前記３次元造形物の形状が前記所定の形状であると判定された場合、前記３次元造形物を造形することを禁止する禁止部を備えている。
【００２３】
上記態様によれば、造形しようとする３次元造形物の形状が所定の形状であると判定された場合、所定の形状と判定された３次元造形物を３次元造形装置が造形することを禁止することができる。
【００２４】
本発明の好ましい他の一態様によれば、造形する前記３次元造形物に関する情報を表示するモニタを備えている。前記禁止部は、前記形状判定部によって、前記３次元造形物の形状が前記所定の形状であると判定された場合、前記モニタに禁止メッセージを表示する。
【００２５】
上記態様によれば、造形しようとする３次元造形物が所定の形状であると判定された場合、３次元造形装置の操作者は、所定の形状と判定された３次元造形物を造形することが禁止されたことを視覚的に確認することができる。
【００２６】
本発明の好ましい他の一態様によれば、前記所定の閾値には、第１の閾値と、前記第１の閾値よりも値が小さい第２の閾値とが含まれている。前記形状判定部は、前記一致率算出部によって算出された一致率が前記第１の閾値以上であるか否か、および、前記第２の閾値以上であるか否かを判定する。前記３次元造形装置は、造形する前記３次元造形物に関する情報を表示するモニタと、前記形状判定部によって、前記一致率算出部によって算出された一致率が前記第２の閾値以上かつ前記第１の閾値未満であると判定された場合、前記モニタに警告メッセージを表示する警告部と、前記形状判定部によって、前記一致率算出部によって算出された一致率が前記第１の閾値以上であると判定された場合、前記３次元造形物を造形することを禁止する禁止部と、を備えている。
【００２７】
上記態様によれば、造形しようとする３次元造形物の一致率の大きさに応じて、３次元造形物を造形することを禁止したり、モニタに警告メッセージを表示したりすることができる。そのため、一致率の大きいものに対しては、確実に禁止することができる。一致率の小さいものに対しては、警告を発することができ、操作者に注意を喚起することができる。一致率の小さいものまで一律に禁止する場合に比べて、規制を行いつつも不要な禁止を避けることができ、３次元造形装置の利便性を向上させることができる。
【００２８】
本発明の好ましい他の一態様によれば、前記所定の形状には、第１の所定の形状と、第２の所定の形状とが含まれている。前記所定の閾値には、第１の閾値と、前記第１の閾値よりも値が小さい第２の閾値とが含まれている。前記形状判定部は、前記一致率算出部によって算出された一致率が前記第１の閾値以上と判定された場合、前記３次元造形物の形状は前記第１の所定の形状であると判定し、前記一致率が前記第２の閾値以上かつ前記第１の閾値未満であると判定された場合、前記３次元造形物の形状は前記第２の所定の形状であると判定し、前記一致率が前記第２の閾値未満であると判定された場合、前記３次元造形物の形状は前記第１の所定の形状、および、前記第２の所定の形状ではないと判定する。
【００２９】
上記態様によれば、第１の所定の形状か第２の所定の形状かに応じて、一致していると判定されるときの基準である閾値を変更することができる。例えば、規制の必要性が相対的に低い形状を第１の所定の形状とし、規制の必要性が相対的に高い形状を第２の所定の形状とすることにより、規制の必要性が相対的に高い形状については、ある程度の形状の相違があったとしても一致していると判定することができる。そのため、より効果的な規制が可能となる。一方、規制の必要性が相対的に低い形状については、高度に一致しない限り、一致していると判定しないことになる。そのため、不要な規制を避けることができ、３次元造形装置の利便性を高めることができる。
【００３０】
本発明の好ましい他の一態様によれば、前記３次元造形装置は、前記３次元造形物を第１の間隔ごとにスライスした断面形状に対応した形状の樹脂層を順次積層することで前記３次元造形物を造形する。前記スライスモデル作成部は、前記正規化処理部によって向きと位置を揃えた前記３次元造形物の３次元モデル、および、前記所定の形状の３次元モデルを、前記第１の間隔よりも間隔が広い第２の間隔でスライスする。
【００３１】
上記態様によれば、スライスモデル作成部における３次元造形物の３次元モデル、および、所定の形状の３次元モデルのそれぞれスライスする間隔は、３次元造形物を造形する際にスライスする間隔よりも広い。よって、スライスモデル作成部によって作成された３次元造形物のスライスモデル、および、所定の形状のスライスモデルの数が、３次元造形物を造形する際にスライスした断面形状の数に比べて少なくなる。したがって、スライスモデル判定部および一致率算出部の演算処理の負荷を小さくすることができる。
【発明の効果】
【００３２】
本発明によれば、３次元造形物の形状が所定の形状か否かを判定するための演算処理の負荷が小さい３次元造形物の形状判定装置、および、それを備えた３次元造形装置を提供することができる。
【図面の簡単な説明】
【００３３】
【図１】本発明の実施形態に係る３次元造形装置の断面図である。
【図２】３次元造形装置の平面図である。
【図３】３次元造形装置のブロック図である。
【図４】正規化処理の手順を示す図である。
【図５】正規化処理の手順を示す図である。
【図６】正規化処理の手順を示す図である。
【図７】正規化処理の手順を示す図である。
【図８】スケールパラメータの増加によって、スライスモデルの輪郭線がどのように変化するかを示した図である。
【図９】造形物スライスモデルが判定物スライスモデルと一致するか否かを判定する手順を示した図である。
【図１０】造形物スライスモデルが判定物スライスモデルと一致するか否かを判定する手順を示した図である。
【図１１】造形物スライスモデルが判定物スライスモデルと一致するか否かを判定する手順を示した図である。
【図１２】３次元造形装置の動作を示すフローチャートである。
【発明を実施するための形態】
【００３４】
以下、図面を参照しながら、本発明の一実施形態に係る３次元造形物の形状判定装置（以下、「形状判定装置」という。）を備えた３次元造形装置について説明する。なお、ここで説明される実施形態は、当然ながら特に本発明を限定することを意図したものではない。また、同じ作用を奏する部材・部位には同じ符号を付し、重複する説明は適宜省略または簡略化する。
【００３５】
図１は、本実施形態に係る３次元造形装置１０の断面図である。図２は、３次元造形装置１０の平面図である。図３は、３次元造形装置１０のブロック図である。なお、以下の説明において、特に断らない限り、図１の左、右をそれぞれ３次元造形装置１０の前、後とする。図面中の符号Ｆ、Ｒｒ、Ｌ、Ｒは、それぞれ前、後、左、右を示している。ただし、これらは説明の便宜上の方向に過ぎず、３次元造形装置１０の設置態様を何ら限定するものではない。
【００３６】
３次元造形装置１０は、３次元造形物の断面形状を用意し、液体の光硬化性樹脂を硬化させて断面形状に対応した形状の樹脂層を順次積層することによって、３次元造形物を造形する装置である。ここで、「断面形状」とは、３次元造形物を所定の厚み（例えば、０．１ｍｍ）ごとに水平にスライスしたときの断面の形状である。「光硬化性樹脂」とは、所定の波長を含む光が照射されると、硬化する樹脂である。
【００３７】
図１に示すように、３次元造形装置１０は、造形装置本体１０Ａと、形状判定装置１００（図３参照）とを備えている。造形装置本体１０Ａは、台１１と、槽１２と、ホルダ１３と、光学装置１４と、制御装置１６と、モニタ１８とを備えている。
【００３８】
台１１は、ケース２５に支持されている。台１１には、開口２１が形成されている。ここで、開口２１は、光硬化性樹脂２３に照射する光を通過させる部位である。図２に示すように、開口２１は、平面視において、矩形状に形成されている。
【００３９】
図１に示すように、槽１２は、液体の光硬化性樹脂２３を収容する。槽１２は、台１１上に載置される。槽１２は、台１１に取り付け可能に配置されている。図２に示すように、槽１２は、平面視において、矩形状の容器である。槽１２は、台１１に載置された状態において、台１１の開口２１を覆う。槽１２は、平面視において、台１１の開口２１と重なる。なお、槽１２は、光を透過させることのできる材料、例えば、透明な材料によって形成されているとよい。
【００４０】
図１に示すように、ホルダ１３は、槽１２の上方に配置されている。ホルダ１３は、台１１の開口２１の上方に配置されている。図２に示すように、ホルダ１３は、平面視において矩形状に形成されている。ここでは、ホルダ１３は、昇降自在な部材である。ホルダ１３は、光が照射されることによって硬化した光硬化性樹脂２３を槽１２から引き上げる部材である。ホルダ１３は、下降したときに槽１２内の光硬化性樹脂２３に浸漬するように構成されている。ホルダ１３は、上昇するときに、光が照射されて硬化した光硬化性樹脂２３を吊り上げるように構成されている。
【００４１】
図１に示すように、台１１には、上下方向に延びた支柱４１が設けられている。支柱４１の前方には、スライダ４２が取り付けられている。スライダ４２は、支柱４１に沿って昇降自在であり、モータ４３によって上方または下方に移動する。ここでは、ホルダ１３は、スライダ４２に取り付けられており、支柱４１の前方に配置されている。ホルダ１３は、モータ４３によって上方または下方に移動する。支柱４１は、スライダ４２を介して、ホルダ１３を昇降自在に間接的に支持している。ただし、支柱４１は、ホルダ１３を直接的に支持していてもよい。
【００４２】
図１に示すように、光学装置１４は、台１１の下方に配置されている。光学装置１４は、槽１２内に収容された液体の光硬化性樹脂２３に所定の波長からなる光を照射する装置である。光学装置１４は、台１１の下方に設けられたケース２５に収容されている。光学装置１４は、ケース２５に支持されている。ここでは、光学装置１４は、台１１の下方に配置されているが、台１１の上方または側方に配置されていてもよい。光学装置１４の配置位置は特に限定されない。光学装置１４は、プロジェクタ３１と、ミラー３２とを備えている。
【００４３】
プロジェクタ３１は、光を発する光源の一例である。ここでは、プロジェクタ３１は、台１１の前部の下方に配置されている。プロジェクタ３１は、ホルダ１３よりも前方に配置されている。プロジェクタ３１の後部には、レンズ３４が配置されている。プロジェクタ３１は、レンズ３４を通じて前方から後方に向かって光を発する。ただし、プロジェクタ３１の投光方向は特に限定されない。
【００４４】
ミラー３２は、プロジェクタ３１から発せられた光を槽１２に向かって反射させる部材である。ミラー３２は、台１１に形成された開口２１の下方に配置されている。ミラー３２は、プロジェクタ３１の後方に配置されている。ミラー３２は、プロジェクタ３１と前後方向に並ぶように配置されている。ミラー３２は、前下がりに傾斜して配置されている。プロジェクタ３１から発せられた光は、ミラー３２によって反射され、台１１の開口２１を通じて槽１２内の光硬化性樹脂２３に照射される。ここで、３次元造形物を造形するに先立って、プロジェクタ３１から発せられた全ての光が開口２１を通過するように、光の照射方向を調節する必要がある。ここでは、３次元造形物を造形するに先立って、プロジェクタ３１の位置を調節することによって光の照射方向を調整しているが、ミラー３２の角度を調整することによって光の照射方向を調節してもよい。
【００４５】
制御装置１６は、ホルダ１３が取り付けられたスライダ４２を昇降自在に制御するモータ４３に接続されている。制御装置１６は、光学装置１４のプロジェクタ３１に接続されている。制御装置１６は、モータ４３を制御する。制御装置１６は、モータ４３を駆動することによって、スライダ４２およびホルダ１３を上方または下方に移動させる。制御装置１６は、プロジェクタ３１を制御する。制御装置１６は、プロジェクタ３１から発せられる光のエネルギー、光度、光量、光の波長帯域、光の形状、光を照射させる位置および光を発するタイミングなどを制御する。なお、制御装置１６の構成は特に限定されない。例えば、制御装置１６は、コンピュータであり、中央演算処理装置（以下、ＣＰＵという。）と、ＣＰＵが実行するプログラムなどを格納したＲＯＭと、ＲＡＭなどを備えていてもよい。
【００４６】
モニタ１８は、造形する前記３次元造形物に関する情報を表示するものである。モニタ１８には、例えば、３次元造形物の断面形状、予定造形時間などが表示されている。なお、モニタ１８の配置位置は特に限定されず、例えば、造形装置本体１０Ａに設けられていてもよい。モニタ１８は、造形装置本体１０Ａに接続されたパソコンの表示画面であってもよい。ここでは、モニタ１８は、制御装置１６に接続されている。制御装置１６は、モニタ１８に３次元造形物に関する情報を表示する。
【００４７】
次に、形状判定装置１００について説明する。図３に示すように、形状判定装置１００は、造形しようとする３次元造形物の形状が所定の形状であるか否かを判定する装置である。所定の形状は、造形することを禁止する禁止物の形状である。禁止物は、例えば、拳銃などの危険物である。ただし、禁止物は、著作権侵害物、または、公序良俗違反となる物などであってもよい。禁止物は、法律で製造が禁止されているものであってもよく、法律では禁止されていないが、社会通念上、製造が禁止されているものであってもよい。また、所定の形状は、禁止はされていないが、規制されるべきものであってもよい。ここでは、形状判定装置１００は、造形しようとする３次元造形物の形状が禁止物の形状であるか否かを判定する装置である。
【００４８】
例えば、形状判定装置１００は、コンピュータであり、ＣＰＵと、ＣＰＵが実行するプログラムなどを格納したＲＯＭと、ＲＡＭなどを備えていてもよい。形状判定装置１０は、制御装置１６に接続されている。制御装置１６は、形状判定装置１００から送信された情報に基づいて、３次元造形物を造形する操作などを制御する。ここでは、形状判定装置１００は、記憶部５２と、正規化処理部５４と、スライスモデル作成部５６と、平滑化処理部５８と、スライスモデル判定部５９と、一致率算出部６０と、形状判定部６１と、許可部６２と、禁止部６４とを備えている。
【００４９】
記憶部５２は、３次元造形装置１０が造形しようとする３次元造形物の３次元モデルのデータ（以下、「造形物３次元モデル」という。）を記憶している。また、記憶部５２は、造形しようとする３次元造形物が所定の形状であるか否かを判定するための所定の形状の３次元モデルのデータ（以下、「判定物３次元モデル」という。）を記憶している。
【００５０】
正規化処理部５４は、記憶部５２に記憶された造形物３次元モデルの向きおよび位置と判定物３次元モデルの向きおよび位置とが同じになるように、造形物３次元モデルの向きおよび位置と判定物３次元モデルの向きおよび位置とを揃える処理を行うものである。ここでは、正規化処理部５４は、造形物３次元モデルの重心と、判定物３次元モデルの重心とが共に原点に位置するようにして、造形物３次元モデルと判定物３次元モデルとの位置を揃える。ここでは、造形物３次元モデルの向きと判定物３次元モデルの向きとを揃え、かつ、造形物３次元モデルの位置と判定物３次元モデルの位置とを揃えることを「正規化」という。
【００５１】
ここでは、正規化処理部５４は、判定物３次元モデルの向きおよび位置が造形物３次元モデルの向きおよび位置と同じになるように、判定物３次元モデルの向きおよび位置を変更する。図４〜図７は、正規化処理の手順について示した図である。図４および図５は、造形物３次元モデルＭ１を示しており、図６および図７は、判定物３次元モデルＭ２を示している。具体的には、図４に示すように、正規化処理部５４は、まず、造形物３次元モデルＭ１の重心Ｇ１を算出する。造形物３次元モデルＭ１の重心Ｇ１を算出する方法は、特に限定されず、従来公知の方法であればよい。次に、正規化処理部５４は、造形物３次元モデルＭ１の主軸Ｌ１１および副軸Ｌ１２を設定する。ここでは、正規化処理部５４は、造形物３次元モデルＭ１の輪郭線を形成する点に対して、造形物３次元モデルＭ１の重心Ｇ１から最も遠い点を算出する。図４では、点Ａ１が重心Ｇ１から最も遠い点である。そして、重心Ｇ１と最も遠い点Ａ１とを結んだ線Ｌ１１を主軸とする。
【００５２】
次に、正規化処理部５４は、造形物３次元モデルＭ１に対して、重心Ｇ１を通り、かつ、主軸Ｌ１１に対して垂直に交わる面を求める。図４では、面Ｓ１が重心Ｇ１を通り、かつ、主軸Ｌ１１に対して垂直に交わる面である。正規化処理部５４は、面Ｓ１上に形成されている造形物３次元モデルＭ１の輪郭線のうち、重心Ｇ１から最も遠い点を算出する。図４では、点Ｂ１が面Ｓ１上において重心Ｇ１から最も遠い点である。そして、重心Ｇ１と点Ｂ１とを結んだ線を副軸Ｌ１２とする。
【００５３】
次に、正規化処理部５４は、図５に示すように、造形物３次元モデルＭ１の重心Ｇ１が原点に、主軸Ｌ１１がＺ軸に、副軸Ｌ１２がＹ軸となるように、造形物３次元モデルＭ１を回転および移動させる際に必要な造形物３次元モデルＭ１の回転量（Ｘ軸を中心にした回転量、Ｙ軸を中心にした回転量、Ｚ軸を中心にした回転量）および移動量（Ｘ軸方向の移動量、Ｙ軸方向の移動量、Ｚ軸方向の移動量）を求める。求めた各回転量および各移動量に関する情報を変換情報として、記憶部５２に記憶する。なお、変換情報には、倍率に関する情報が含まれていてもよい。ここで、「倍率」とは、造形物３次元モデルＭ１の判定物３次元モデルＭ２に対する倍率（すなわち、造形物３次元モデルＭ１の大きさ／判定物３次元モデルＭ２の大きさ）である。例えば、造形物３次元モデルＭ１の主軸Ｌ１１の長さと、判定物３次元モデルＭ２の主軸Ｌ２１の長さを同一にすることで、造形物３次元モデルＭ１の大きさと判定物３次元モデルＭ２の大きさとを略同じにすることができる。なお、ここでは、正規化処理後であって、倍率を同じにした造形物３次元モデルＭ１および判定物３次元モデルＭ２をモニタ１８（図１参照）に表示してもよい。これにより、操作者は、モニタ１８に表示された造形物３次元モデルＭ１および判定物３次元モデルＭ２を目視しながら、造形物３次元モデルＭ１が判定物３次元モデルＭ２と類似しているか否かを判定することができる。
【００５４】
なお、本実施形態では、正規化処理部５４は、判定物３次元モデルＭ２についても、上述した造形物３次元モデルＭ１と同様の正規化処理を行う。ただし、判定物３次元モデルＭ２の変換情報は、記憶部５２に記憶されていてもよいし、記憶されていなくてもよい。ここでは、判定物３次元モデルＭ２の変換情報は使用しない。正規化処理を行った後の造形物３次元モデルＭ１の重心Ｇ１と、判定物３次元モデルＭ２の重心Ｇ２とは、共に原点に位置している。
【００５５】
ここでは、図６に示すように、判定物３次元モデルＭ２は、正規化処理が施された後の向きおよび位置で記憶部５２に記憶されている。すなわち、記憶部５２に記憶された判定物３次元モデルＭ２は、重心Ｇ２が原点、主軸Ｌ２１がＺ軸、副軸Ｌ２２がＹ軸であるような向きおよび位置となっている。
【００５６】
図７に示すように、正規化処理部５４は、上述した造形物３次元モデルＭ１の変換情報に基づいて、判定物３次元モデルＭ２の向きおよび位置が造形物３次元モデルＭ１の向きおよび位置（図４参照）と同じになるように、判定物３次元モデルＭ２を回転、および、移動させる。具体的には、正規化処理部５４は、記憶部５２に記憶された造形物３次元モデルＭ１の変換情報の各回転量および各移動量の正負を反転させ（以下、「反転変換情報」という。）、反転変換情報に基づいて、判定物３次元モデルＭ２を回転および移動させる。
【００５７】
スライスモデル作成部５６は、正規化処理部５４によってお互いの向きおよび位置が揃えられた造形物３次元モデルＭ１および判定物３次元モデルＭ２に対して、スライスモデルのデータを作成する。ここでは、スライスモデル作成部５６は、造形物３次元モデルＭ１および判定物３次元モデルＭ２をそれぞれ所定の間隔で水平方向にスライスすることによって、２次元のスライスモデルのデータを複数作成する。スライスする方向は、水平方向に限定されず、例えば、垂直方向であってもよい。造形物３次元モデルＭ１および判定物３次元モデルＭ２をスライスする所定の間隔は、３次元造形装置１０が３次元造形物を造形する際にスライスする間隔と同じ間隔である。ここでは、２次元のスライスモデルのデータとは、ＳＴＬデータのことである。なお、ここでは、造形物３次元モデルのスライスモデルのデータのことを「造形物スライスモデル」と称し、判定物３次元モデルのスライスモデルのデータのことを「判定物スライスモデル」と称する。また、複数の造形物スライスモデルのうち、１つの造形物スライスモデルを層と称し、造形物スライスモデルの層の数を層数と称する。同様に、複数の判定物スライスモデルのうち、１つの判定物スライスモデルを層と称し、判定物スライスモデルの層の数を層数と称する。ここでは、造形物スライスモデルの層数と、判定物スライスモデルの層数とは同じであり、ｎ層（ただし、ｎは２以上の整数）の造形物スライスモデルおよび判定物スライスモデルが作成されている。なお、スライスモデル作成部５６によって作成されたｎ層の造形物スライスモデルは、３次元造形装置１０が３次元造形物を造形する際に使用される３次元造形物の断面形状のデータである。
【００５８】
平滑化処理部５８は、スライスモデル作成部５６によって作成された造形物スライスモデルおよび判定物スライスモデルのそれぞれの輪郭線に対して、平滑化処理を行うものである。ここで、「平滑化処理」とは、造形物スライスモデルの輪郭線および判定物スライスモデルの輪郭線を平滑にする処理のことである。ここでは、平滑化処理として、スライスモデルの輪郭線図形Ｃ（ｕ）＝（ｘ（ｕ）、ｙ（ｕ））の大きさを捉えるために、以下のガウス関数を満たす輪郭線Ｆ（ｕ、ｔ）を考える。
【００５９】
【数１】
2016124230.tif 000003
【００６０】
上記ガウス関数において、κは曲率、Ｎは単位法線ベクトルを示している。ｕは、スライスモデルの輪郭線に沿ったパラメータである。ここでは、ｔをスケールパラメータと称する。スケールパラメータｔは、０以上の数である。図８は、スケールパラメータｔの増加によって、スライスモデルの輪郭線がどのように変化したかを示した図である。図８では、右の図形にいく程、スケールパラメータｔを増加させている。すなわち、スライスモデルＭ３１におけるスケールパラメータｔの値が最も小さく、スライスモデルＭ３３におけるスケールパラメータｔの値が最も大きい。図８に示すように、スケールパラメータｔを０から次第に増加させていくと、輪郭線Ｆ（ｕ、ｔ）上の各点は、法線方向に曲率の方向だけ移動する。そのため、スケールパラメータｔの値を増加させると、スライスモデルＭ３３のように、スライスモデルの輪郭線は滑らかになる。なお、スケールパラメータｔの値が大き過ぎると、スライスモデルの輪郭線が滑らかになり過ぎてしまい、造形物スライスモデルと判定物スライスモデルとが一致しているか否かを判定することが困難になる。そのため、スケールパラメータｔの値は、スライスモデルの輪郭線において、頂点がある程度残る程度の値であることが好ましい。ここでは、シミュレーションを繰り返し行うことで、最適となるスケールパラメータｔの値を設定している。ただし、ｔの値の設定方法は何ら限定されない。ｔの値は試行錯誤により、または経験に基づいて適宜設定してもよい。
【００６１】
スライスモデル判定部５９は、スライスモデル作成部５６によって作成されたｍ層目（ただし、ｍ＝１〜ｎの整数）の造形物スライスモデルと、ｍ層目の判定物スライスモデルとが一致するか否かを判定するものである。ここでは、平滑化処理部５８によって平滑化処理が施されたｍ層目の造形物スライスモデルの輪郭線によって形成された形状と、平滑化処理が施されたｍ層目の判定物スライスモデルの輪郭線によって形成された形状とが一致するか否かを判定する。
【００６２】
図９〜図１１は、造形物スライスモデルの上からｍ番目の層ＭＳ１（ｍ）（以下、「造形物スライスモデルＭＳ１（ｍ）」という。）が判定物スライスモデルの上からｍ番目の層ＭＳ２（ｍ）（以下、「判定物スライスモデルＭＳ２（ｍ）」という。）と一致するか否かを判定する手順を示した図である。図９は、造形物スライスモデルＭＳ１（ｍ）を示し、図１０は、判定物スライスモデルＭＳ２（ｍ）を示している。図１１は、造形物スライスモデルＭＳ１（ｍ）の輪郭線の線分ｆ１と、判定物スライスモデルＭＳ２（ｍ）の輪郭線の線分ｆ２との比較について示した図である。ここでは、まず、スライスモデル判定部５９は、造形物スライスモデルＭＳ１（ｍ）と判定物スライスモデルＭＳ２（ｍ）との一致率を算出する。なお、図９および図１０において、造形物スライスモデルＭＳ１（ｍ）および判定物スライスモデルＭＳ２（ｍ）は、平滑化処理部５８によって各輪郭線に対して平滑化が施された後のスライスモデルである。
【００６３】
まず、図９に示すように、スライスモデル判定部５９は、造形物スライスモデルＭＳ１（ｍ）の輪郭線を分割し、線分ａ１〜ｆ１を抽出する。ここでは、スライスモデル判定部５９は、造形物スライスモデルＭＳ１（ｍ）の輪郭線を頂点で分割し、線分ａ１〜ｆ１を抽出している。同様にして、スライスモデル判定部５９は、判定物スライスモデルＭＳ２（ｍ）の輪郭線を分割（ここでは、頂点で分割）し、線分ａ２〜ｆ２を抽出する。ただし、輪郭線を分割する位置は、頂点に限定されない。例えば、造形物スライスモデルＭＳ１（ｍ）および判定物スライスモデルＭＳ２（ｍ）に対して、各スライスモデルの幅よりも狭い所定の間隔で複数の平行線を設ける。そして、造形物スライスモデルＭＳ１（ｍ）および判定物スライスモデルＭＳ２（ｍ）の各輪郭線と、上記複数の平行線とが交わる複数の交点を得る。複数の交点は、例えば、輪郭線上の直線上または曲線上の点となる。ここでは、輪郭線を分割する位置は、輪郭線上の直線上または曲線上の上記交点の位置であってもよい。この場合、造形物スライスモデルＭＳ１（ｍ）および判定物スライスモデルＭＳ２（ｍ）のそれぞれの輪郭線が曲線で構成された場合であっても、輪郭線を分割して複数の線分を抽出することができる。
【００６４】
そして、スライスモデル判定部５９は、造形物スライスモデルＭＳ１（ｍ）の輪郭線の線分ａ１（以下、造形物スライスモデルの輪郭線の線分を「造形物スライスモデルの線分」ともいう。）と判定物スライスモデルＭＳ２（ｍ）の輪郭線の線分ａ２（以下、判定物スライスモデルの輪郭線の線分を「判定物スライスモデルの線分」ともいう。）とが一致するか否かを判定する。ここでは、線分同士が一致するか否かの判定は、線分ａ１と線分ａ２との最大距離ａｍａｘを算出し、算出した最大距離ａｍａｘが予め定められた距離よりも小さいか否かを判定する。ここで、スライスモデル判定部５９は、線分ａ１と線分ａ２との最大距離ａｍａｘが予め定められた距離よりも小さい場合、造形物スライスモデルＭＳ１（ｍ）の線分ａ１は、判定物スライスモデルＭＳ２（ｍ）の線分ａ２に対して一致していると判定する。一方、スライスモデル判定部５９は、線分ａ１と線分ａ２との最大距離ａｍａｘが予め定められた距離以上の場合、造形物スライスモデルＭＳ１（ｍ）の線分ａ１は、判定物スライスモデルＭＳ２（ｍ）の線分ａ２に対して一致していないと判定する。図９および図１０の一例では、線分ａ１と線分ａ２との最大距離ａｍａｘは０である。そのため、スライスモデル判定部５９は、線分ａ１と線分ａ２とは一致していると判定する。
【００６５】
同様の方法で、スライスモデル判定部５９は、造形物スライスモデルＭＳ１（ｍ）の線分ｂ１，ｃ１，ｄ１，ｅ１，ｆ１が、それぞれ判定物スライスモデルＭＳ２（ｍ）の線分ｂ２，ｃ２，ｄ２，ｅ２，ｆ２に対して、一致しているか否かを判定する。図１１の一例では、造形物スライスモデルＭＳ１（ｍ）の線分ｆ１と判定物スライスモデルＭＳ２（ｍ）の線分ｆ２との最大距離ｆｍａｘは、予め定められた距離以上である。よって、スライスモデル判定部５９は、造形物スライスモデルＭＳ１（ｍ）の線分ｆ１は、判定物スライスモデルＭＳ２（ｍ）の線分ｆ２と一致していないと判定する。なお、図９および図１０の一例では、スライスモデル判定部５９は、造形物スライスモデルＭＳ１（ｍ）の線分ｂ１〜ｅ１は、それぞれ判定物スライスモデルＭＳ２（ｍ）の線分ｂ２〜ｅ２と一致していると判定している。
【００６６】
次に、スライスモデル判定部５９は、造形物スライスモデルＭＳ１（ｍ）の線分ａ１〜ｆ１が、それぞれ判定物スライスモデルＭＳ２（ｍ）の線分ａ２〜ｆ２と一致しているか否かを判定した後、造形物スライスモデルＭＳ１（ｍ）の判定物スライスモデルＭＳ２（ｍ）に対する一致率を算出する。ここでは、スライスモデル判定部５９は、造形物スライスモデルＭＳ１（ｍ）の線分のうち判定物スライスモデルＭＳ２（ｍ）の線分と一致した数における造形物スライスモデルＭＳ１（ｍ）の線分の数に対する割合を算出する。ここでは、当該割合を造形物スライスモデルＭＳ１（ｍ）の一致率と称する。図９〜図１１の一例では、造形物スライスモデルＭＳ１（ｍ）の線分ａ１〜ｅ１は、それぞれ判定物スライスモデルＭＳ２（ｍ）の線分ａ２〜ｅ２と一致している。造形物スライスモデルＭＳ１（ｍ）の線分ｆ１は、判定物スライスモデルＭＳ２（ｍ）の線分ｆ２と一致していない。よって、造形物スライスモデルＭＳ１（ｍ）の一致率は、５／６となる。スライスモデル判定部５９は、同様な方法で、造形物スライスモデルの他の層についての一致率を算出する。
【００６７】
一致率算出部６０は、造形物３次元モデルＭ１における判定物３次元モデルＭ２に対する一致率を算出する。ここでは、一致率算出部６０は、スライスモデル判定部５９で算出された造形物スライスモデルＭＳ１（ｍ）の一致率に基づいて、造形物３次元モデルＭ１における判定物３次元モデルＭ２に対する一致率を算出する。例えば、一致率が１の場合には、造形物３次元モデルＭ１は、判定物３次元モデルＭ２と完全に一致しているといえる。
【００６８】
具体的には、図９〜図１１の一例では、一致率算出部６０は、スライスモデル判定部５９によって算出された造形物スライスモデルの各層における一致率を合算し、合算した一致率を造形物スライスモデルの層数（ここでは、層数はｎ）で割ることで、造形物３次元モデルＭ１の一致率を算出する。ここで、造形物スライスモデルＭＳ１（１）、ＭＳ１（２）、・・・、ＭＳ１（ｎ−１）、ＭＳ１（ｎ）の一致率を、それぞれＰＳ１（１）、ＰＳ１（２）、・・・、ＰＳ１（ｎ−１）、ＰＳ１（ｎ）とすると、造形物３次元モデルＭ１の一致率Ｐ１は、以下の数式（２）によって、算出することができる。
Ｐ１＝（ＰＳ１（１）＋ＰＳ１（２）＋・・・＋ＰＳ１（ｎ−１）＋ＰＳ１（ｎ））／ｎ  ・・・（２）
【００６９】
形状判定部６１は、３次元造形装置１０が造形する３次元造形物の形状が、所定の形状であるか否かを判定する。ここでは、形状判定部６１は、一致率算出部６０によって算出された造形物３次元モデルＭ１の一致率Ｐ１が所定の閾値以上か否かを判定する。なお、所定の閾値は、記憶部５２に予め記憶されている。形状判定部６１は、造形物３次元モデルＭ１の一致率Ｐ１が所定の閾値以上の場合、３次元造形装置１０が造形しようとする３次元造形物の形状が所定の形状であると判定する。一方、形状判定部６１は、造形物３次元モデルＭ１の一致率Ｐ１が所定の閾値未満の場合、３次元造形装置１０が造形しようとする３次元造形物の形状が所定の形状ではないと判定する。
【００７０】
許可部６２は、形状判定部６１によって、造形しようとする３次元造形物の形状が、所定の形状ではないと判定された場合、３次元造形装置１０が３次元造形物を造形することを許可する。
【００７１】
禁止部６４は、形状判定部６１によって、造形しようとする３次元造形物の形状が、所定の形状であると判定された場合、３次元造形装置１０が３次元造形物を造形することを禁止する。この禁止する方法は特に限定されず、例えば、禁止部６４は、３次元造形装置１０のモニタ１８（図１参照）に禁止メッセージを表示し、３次元造形装置１０における３次元造形物を造形する操作をすることができないようにしてもよい。
【００７２】
次に、本実施形態の３次元造形装置１０の動作について説明する。図１２は、３次元造形装置１０の動作を示すフローチャートである。図１２に示すように、まず、ステップＳ１０１において、記憶部５２は、造形しようとする３次元造形物の３次元モデルＭ１のデータを記憶する。なお、記憶部５２には、判定物３次元モデルＭ２のデータが予め記憶されているものとする。次に、ステップＳ１０２において、正規化処理部５４は、造形物３次元モデルＭ１と判定物３次元モデルＭ２との向きおよび位置を揃える正規化処理を行う。ここでは、正規化処理部５４は、まず、造形物３次元モデルＭ１および判定物３次元モデルＭ２に対してそれぞれ正規化処理を行う。そして、正規化処理を行った際の造形物３次元モデルＭ１の変換情報を記憶部５２に記憶させる。次に、正規化処理部５４は、造形物３次元モデルＭ１の変換情報を反転させた反転変換情報に基づいて、正規化処理を行った判定物３次元モデルＭ２を回転および移動させる。ここでは、以上の処理を行うことによって、判定物３次元モデルＭ２の向きおよび位置を造形物３次元モデルＭ１の向きおよび位置に揃える。
【００７３】
その後、ステップＳ１０３において、スライスモデル作成部５６は、造形物３次元モデルＭ１のスライスモデル（造形物スライスモデル）、および、判定物３次元モデルＭ２のスライスモデル（判定物スライスモデル）を作成する。このとき、造形物スライスモデルの層数と、判定物スライスモデルの層数とは同じであり、その層数はｎであるとする。
【００７４】
次に、ステップＳ１０４において、平滑化処理部５８は、造形物スライスモデルの各層の輪郭線、および、判定物スライスモデルの各層の輪郭線に対して平滑化処理を行う。その後、ステップＳ１０５において、スライスモデル判定部５９は、１層目の造形物スライスモデルの各線分と、１層目の造形物スライスモデルの各線分に対応する１層目の判定物スライスモデルの各線分とがそれぞれ一致するか否かを判定する。同様にして、２層目、３層目、・・・、ｎ層目の造形物スライスモデルの各線分が、２層目、３層目、・・・、ｎ層目の造形物スライスモデルの各線分に対応する２層目、３層目、・・・、ｎ層目の判定物スライスモデルの各線分と一致するか否かを判定する。そして、ステップＳ１０５において、スライスモデル判定部５９は、造形物スライスモデルの各層における一致率を算出する。その後、ステップＳ１０６において、一致率算出部６０は、造形物スライスモデルの各層における一致率を加算し、加算した一致率を造形物スライスモデルの層数で割る。このことによって、造形物３次元モデルＭ１における判定物３次元モデルＭ２に対する一致率を算出することができる。
【００７５】
その後、ステップＳ１０７において、形状判定部６１は、一致率算出部６０によって算出された造形物３次元モデルＭ１の一致率が予め定められた閾値未満であるか否かを判定する。ここで、形状判定部６１は、造形物３次元モデルＭ１の一致率が予め定められた閾値未満である場合、造形しようとする３次元造形物の形状が所定の形状ではないと判定し、次に、ステップＳ１０８に進む。一方、形状判定部６１は、造形物３次元モデルＭ１の一致率が予め定められた閾値以上の場合、造形しようとする３次元造形物の形状が所定の形状であると判定し、次に、ステップＳ１０９に進む。
【００７６】
造形しようとする３次元造形物が所定の形状ではないと判定された場合、ステップＳ１０８では、許可部６２は、３次元造形装置１０が３次元造形物を造形することを許可する。このとき、３次元造形装置１０は、スライスモデル作成部５６によって作成された造形物スライスモデルを使用して、３次元造形物を造形することができる。
【００７７】
一方、造形しようとする３次元造形物が所定の形状であると判定された場合、ステップＳ１０９では、禁止部６４は、３次元造形装置１０が３次元造形物を造形することを禁止する。
【００７８】
以上、本実施形態によれば、ｍ層目の造形物スライスモデルＭＳ１（ｍ）と、ｍ層目の判定物スライスモデルＭＳ２（ｍ）とをそれぞれ比較し、その比較結果に基づいて造形物３次元モデルＭ１の判定物３次元モデルＭ２に対する一致率を算出することで、３次元造形物が所定の形状であるか否かを判定している。スライスモデルは、２次元のモデルのため、３次元モデルと比較して単純な形状である。よって、本実施形態の形状判定装置１００では、造形物３次元モデルＭ１と判定物３次元モデルＭ２とを直接比較して３次元造形物が所定の形状であるか否かを判定する場合と比べて、演算処理の負荷を小さくすることができる。
【００７９】
図３に示すように、形状判定装置１００は、スライスモデル作成部５６によって作成されたｍ層目の造形物スライスモデルＭＳ１（ｍ）の輪郭線、および、ｍ層目の判定物スライスモデルＭＳ２（ｍ）の輪郭線を平滑化する平滑化処理部５８を備えている。スライスモデル判定部５６は、平滑化処理部５８によって平滑化されたｍ層目の造形物スライスモデルＭＳ１（ｍ）の輪郭線と、平滑化処理部５８によって平滑化されたｍ層目の判定物スライスモデルＭＳ２（ｍ）の輪郭線とが一致するか否かを判定する。例えば、所定の形状を少し変更したもの（例えば、所定の形状の一部に突起または凹みをつけたもの）を３次元造形物とした場合、所定の形状を少し変更した３次元造形物であっても所定の形状であると判定したいにも関わらず、その３次元造形物が所定の形状ではないと判定するおそれがある。しかし、本実施形態では、造形物スライスモデルＭＳ１（ｍ）の輪郭線、および、判定物スライスモデルＭＳ２（ｍ）の輪郭線を平滑化して、それぞれの輪郭線同士を対比することによって、造形物スライスモデルＭＳ１（ｍ）と判定物スライスモデルＭＳ２（ｍ）との間で多少の形状の不一致があっても同じ形状として扱うことができる。よって、造形物スライスモデルＭＳ１（ｍ）と、判定物スライスモデルＭＳ２（ｍ）との間で多少の形状の不一致がある場合であっても、３次元造形物の形状が所定の形状であると判定することができる。
【００８０】
本実施形態では、平滑化処理部５８は、ガウス関数を用いて、ｍ層目の造形物スライスモデルＭＳ１（ｍ）の輪郭線、および、ｍ層目の判定物スライスモデルＭＳ２（ｍ）の輪郭線を平滑化する。このことによって、造形物スライスモデルＭＳ１（ｍ）、および、判定物スライスモデルＭＳ２（ｍ）の輪郭線を確実に平滑化することができる。
【００８１】
図７に示すように、正規化処理部５４は、判定物３次元モデルＭ２の向きおよび位置を、造形物３次元モデルＭ１の向きおよび位置に一致するように、造形物３次元モデルＭ１の正規化処理によって得られた変換情報に基づいて、判定物３次元モデルＭ２を回転、および、移動させる。このことによって、造形物３次元モデルＭ１の向きと位置を変更することなく、判定物３次元モデルＭ２の向きと位置を変更しているため、造形物３次元モデルＭ１の向きと位置、および、判定物３次元モデルＭ２の向きと位置を共に変更する場合と比較して、処理時間を短縮することができる。
【００８２】
例えば、３次元造形物の形状が所定の形状ではないと判定された場合、３次元造形物の造形物スライスモデルを新たに作成する。そして、新たに作成した造形物スライスモデルを用いて３次元造形物を造形する。しかし、本実施形態では、正規化処理部５４は、造形物３次元モデルＭ１の向きと位置を変更することなく、判定物３次元モデルＭ２の向きと位置を変更することで、造形物３次元モデルＭ１と判定物３次元モデルＭ２の向きと位置を揃えている。スライスモデル作成部５６は、向きと位置が変更されていない造形物３次元モデルＭ１を使用して造形物スライスモデルを作成している。また、スライスモデル作成部５６によって造形物３次元モデルＭ１および判定物３次元モデルＭ２をスライスする間隔は、３次元造形装置１０が３次元造形物を造形する際にスライスする間隔と同じ間隔である。向きと位置が変更されていない造形物３次元モデルＭ１を使用して作成した造形物スライスモデルは、３次元造形物を造形する際のスライスモデルとしてそのまま使用することができる。よって、３次元造形物の形状が所定の形状ではないと判定された場合、スライスモデル作成部５６によって作成された造形物スライスモデルを使用して、３次元造形物を造形することができる。よって、３次元造形物を造形する際、造形物スライスモデルを新たに作成することを省略することができるため、造形時間を短縮することができる。
【００８３】
図１１に示すように、スライスモデル判定部５９は、ｍ層目の造形物スライスモデルＳＭ１（ｍ）の輪郭線を分割（ここでは、輪郭線を頂点で分割）することにより得られる複数の線分のうちの一の線分と、ｍ層目の判定物スライスモデルＳＭ２（ｍ）の輪郭線をｍ層目の造形物スライスモデルＳＭ１（ｍ）の輪郭線における分割に対応するように分割することにより得られる複数の線分のうち、上記一の線分に対応する他の一の線分とを比較する。そして、スライスモデル判定部５９は、造形物スライスモデルＭＳ１（ｍ）の一の線分と、判定物スライスモデルＭＳ２（ｍ）の一の線分との間の最大距離（図１１では、最大距離ｆｍａｘ）が所定の距離未満の場合、造形物スライスモデルＳＭ１（ｍ）の一の線分は、判定物スライスモデルＳＭ２（ｍ）の一の線分に対して一致していると判定する。そして、スライスモデル判定部５９は、一致したと判定された線分の数を、造形物スライスモデルＭＳ１（ｍ）に含まれる線分の総数で割った値を、造形物スライスモデルのＭＳ１（ｍ）の一致率としている。このことによって、造形物スライスモデルＳＭ１（ｍ）の一の線分と、判定物スライスモデルＳＭ２（ｍ）の一の線分とを比較することで、造形物スライスモデルＳＭ１（ｍ）の一致率を容易に算出することができる。
【００８４】
一致率算出部６０は、スライスモデル判定部５９は、判定物スライスモデルＭＳ２（ｍ）に対する造形物スライスモデルＭＳ１（ｍ）の一致率を判定する。一致率算出部６０は、判定物３次元モデルＭ２に対する造形物３次元モデルＭ１の一致率として、１〜ｎ層目の一致率を合算した値をｎで割った値を算出する。このことによって、造形物スライスモデルＭＳ１（ｍ）における判定物スライスモデルＭＳ２（ｍ）に対する一致率を使用することで、造形物３次元モデルＭ１における判定物３次元モデルＭ２に対する一致率を容易に算出することができる。
【００８５】
３次元造形装置１０の形状判定装置１００は、形状判定部６１によって、造形しようとする３次元造形物の形状が所定の形状であると判定された場合、３次元造形物を造形することを禁止する禁止部６４を備えている。このことによって、造形しようとする３次元造形物の形状が所定の形状であると判定された場合、所定の形状と判定された３次元造形物を３次元造形装置１０が造形することを禁止することができる。
【００８６】
図１に示すように、３次元造形装置１０は、造形する３次元造形物に関する情報を表示するモニタ１８を備えている。禁止部６４は、形状判定部６１によって、３次元造形物の形状が所定の形状であると判定された場合、モニタ１８に禁止メッセージを表示する。このことによって、造形しようとする３次元造形物が所定の形状であると判定された場合、３次元造形装置１０の操作者は、所定の形状と判定された３次元造形物を造形することが禁止されたことを視覚的に確認することができる。ただし、禁止部６４は、形状判定部６１によって、３次元造形物の形状が所定の形状であると判定された場合、音を発するように構成されていてもよい。この場合、操作者は所定の形状と判定された３次元造形物を造形することが禁止されたことを聴覚的に確認することができる。
【００８７】
以上、本実施形態に係る形状判定装置１００、および、形状判定装置１００を備えた３次元造形装置１０について説明した。しかし、本発明に係る形状判定装置、および、３次元造形装置は、本実施形態に係る形状判定装置１００および３次元造形装置１０に限らず、他の種々の形態で実施することができる。
【００８８】
＜他の実施形態＞
上記実施形態では、スライスモデル作成部５６によって造形物３次元モデルＭ１および判定物３次元モデルＭ２をスライスする間隔は、３次元造形装置１０が３次元造形物を造形する際にスライスする間隔と同じ間隔であった。しかし、スライスモデル作成部５６によって造形物３次元モデルＭ１および判定物３次元モデルＭ２をスライスする間隔は、３次元造形装置１０が３次元造形物を造形する際にスライスする間隔と異なっていてもよい。例えば、３次元造形装置１０が３次元造形物を造形する際のスライスする間隔が第１の間隔であってもよい。そして、スライスモデル作成部５６によって造形物３次元モデルＭ１および判定物３次元モデルＭ２をスライスする間隔は、上記第１の間隔よりも間隔が広い第２の間隔であってもよい。造形する３次元造形物が所定の形状であるか否かを判定するための造形物スライスモデルおよび判定物スライスモデルの作成にあたって、造形物３次元モデルＭ１および判定物３次元モデルＭ２をスライスする間隔が、造形する際に３次元造形物をスライスする間隔よりも多少広い場合であっても、造形物３次元モデルＭ１の判定物３次元モデルＭ２に対する一致判定の結果はそれ程変わらない。例えば、スライスモデル作成部５６が造形物３次元モデルＭ１および判定物３次元モデルＭ２をスライスする間隔は、３次元造形装置１０が３次元造形物を造形する際にスライスする間隔よりも４倍程度の間隔であってもよい。この場合、スライスモデル作成部５６が造形物３次元モデルＭ１および判定物３次元モデルＭ２をスライスする間隔と造形時に３次元造形物をスライスする間隔とを同じにする場合と比較して、一致判定の結果が変わることなく、スライスモデル判定部５９および一致率算出部６０の処理時間をおよそ４分の１程度に短縮することができる。よって、このことにより、スライスモデル判定部５９および一致率算出部６０の演算処理の負荷を小さくすることができる。
【００８９】
なお、スライスモデル作成部５６によって造形物３次元モデルＭ１および判定物３次元モデルＭ２をスライスする間隔は等間隔でなくてもよく、広い間隔の部分と狭い間隔の部分があってもよい。例えば、造形物３次元モデルＭ１のうち、形状が複雑な部分ではスライスする間隔を狭くしてもよい。造形物３次元モデルＭ１のうち、形状が単純な部分ではスライスする間隔を広くしてもよい。ただし、スライスモデル作成部５６によってスライスする間隔は、一致判定の結果が変わる程度に広くすることは好ましくない。スライスモデル作成部５６によってスライスする間隔は、試行錯誤により、または経験に基づいて適宜設定することができる。
【００９０】
上記実施形態では、スライスモデル判定部５９は、スライスモデル作成部５６によって作成された造形物スライスモデルＭＳ１（ｍ）と、判定物スライスモデルＭＳ２（ｍ）とを対比し、判定物スライスモデルＭＳ２（ｍ）に対する造形物スライスモデルＭＳ１（ｍ）の一致率を判定していた。しかし、スライスモデル判定部５９は、造形物スライスモデルＭＳ１（ｍ）に対する判定物スライスモデルＭＳ２（ｍ）の一致率を判定してもよい。そして、一致率算出部６０は、造形物スライスモデルＭＳ１（ｍ）が判定物スライスモデルＭＳ２（ｍ）と一致した造形物スライスモデルＭＳ１（ｍ）の数を、造形物スライスモデルの層数で割ることで、造形物３次元モデルＭ１の一致率を算出してもよい。
【００９１】
上記実施形態では、スライスモデル判定部５９は、造形物スライスモデルＭＳ１（ｍ）の輪郭線および判定物スライスモデルＭＳ２（ｍ）の輪郭線を分割して、それぞれ複数の線分を抽出していた。そして、抽出した線分のうち対応する１つの線分同士を比較することで、造形物スライスモデルＭＳ１（ｍ）と、判定物スライスモデルＭＳ２（ｍ）とが一致するか否かを判定していた。しかし、スライスモデル判定部５９は、抽出した線分のうち連続した複数の線分を１つの線分と見立てて、対応する線分同士を比較してもよい。この場合であっても、スライスモデル判定部５９は、造形物スライスモデルＭＳ１（ｍ）と、判定物スライスモデルＭＳ２（ｍ）とが一致するか否かを判定することができる。
【００９２】
上記実施形態では、形状判定部６１が造形物３次元モデルＭ１の一致率Ｐ１と比較する所定の閾値は一つであった。しかし、所定の閾値は２つ以上、例えば、２つであってもよい。ここでは、所定の閾値には、第１の閾値と、第１の閾値よりも値が小さい第２の閾値とが含まれている。第１の閾値および第２の閾値は、記憶部５２に予め記憶されている。形状判定部６１は、一致率算出部６０によって算出された造形物３次元モデルＭ１の一致率Ｐ１が第１の閾値以上であるか否か、および、第２の閾値以上であるか否かを判定する。
【００９３】
ここでは、形状判定装置１００は、警告部を備えている。上記警告部は、形状判定部６１によって、一致率算出部６０によって算出された一致率Ｐ１が第２の閾値以上かつ第１の閾値未満であると判定された場合、モニタ１８（図１参照）に警告メッセージを表示する。このとき、上記警告部は、モニタ１８に、３次元造形物を造形するか否かを操作者が選択できるようなボタンを表示してもよい。このことによって、操作者の判断で、警告された３次元造形物を造形するか否かを決定することができる。
【００９４】
ここでは、禁止部６４は、形状判定部６１によって、一致率算出部６０によって算出された一致率Ｐ１が第１の閾値以上であると判定された場合、３次元造形物を造形することを禁止する。
【００９５】
このように、ここでは、造形しようとする造形物３次元モデルＭ１の一致率Ｐ１の大きさに応じて、３次元造形物を造形することを禁止したり、モニタ１８に警告メッセージを表示したりすることができる。そのため、造形物３次元モデルＭ１の一致率の大きいものに対しては、確実に造形することを禁止することができる。一方、造形物３次元モデルＭ１が判定物３次元モデルＭ２と一致しているとは言い切れないが、一致している可能性が高い場合には、造形をすることを禁止にはせずに、警告を発することで操作者に注意を喚起することができる。よって、一致率の小さい造形物（一致していると言い切れない造形物）から一致率の大きい造形物（一致していると言い切れる造形物）まで一律に造形を禁止する場合に比べて、規制を行いつつ、かつ、不要な造形の禁止を避けることができる。したがって、３次元造形装置１０の利便性を向上させることができる。
【００９６】
上記実施形態では、比較対象となる所定の形状は、１つであった。しかし、所定の形状は、２つ以上、例えば、２つであってもよい。ここでは、所定の形状には、第１の所定の形状と、第２の所定の形状とが含まれている。形状判定部６１が造形物３次元モデルＭ１の一致率Ｐ１と比較する所定の閾値には、第１の閾値と、第１の閾値よりも値が小さい第２の閾値とが含まれている。
【００９７】
ここでは、形状判定部６１は、一致率算出部６０によって算出された一致率Ｐ１が第１の閾値以上と判定された場合、３次元造形物の形状は第１の所定の形状であると判定する。形状判定部６１は、造形物３次元モデルＭ１の一致率Ｐ１が第２の閾値以上かつ第１の閾値未満であると判定された場合、３次元造形物の形状は第２の所定の形状であると判定する。形状判定部６１は、造形物３次元モデルＭ１の一致率Ｐ１が第２の閾値未満であると判定された場合、３次元造形物の形状は第１の所定の形状、および、第２の所定の形状ではないと判定する。
【００９８】
なお、形状判定部６１によって、３次元造形物の形状が第１の所定の形状であると判定された場合、禁止部６４によって３次元造形物の造形を禁止してもよいし、上記警告部によってモニタ１８に警告メッセージを表示してもよい。また、同様に、形状判定部６１によって、３次元造形物の形状が第２の所定の形状であると判定された場合、禁止部６４によって３次元造形物の造形を禁止してもよいし、上記警告部によってモニタ１８に警告メッセージを表示してもよい。
【００９９】
ここでは、造形しようとする３次元造形物の形状が第１の所定の形状か第２の所定の形状かに応じて、一致していると判定されるときの基準である閾値を変更することができる。例えば、規制の必要性が相対的に低い形状（例えば、法律で禁止されていないが規制すべきもの（公序良俗違反のものなど））を第１の所定の形状とし、規制の必要性が相対的に高い形状（例えば、法律で製造が禁止されているもの（拳銃などの危険物など））を第２の所定の形状とする。このことによって、規制の必要性が相対的に高い形状については、ある程度の形状の相違があったとしても一致していると判定することができる。そのため、より効果的な規制が可能となる。一方、規制の必要性が相対的に低い形状については、高度に一致しない限り、一致していると判定しないことになる。そのため、不要な規制を避けることができ、３次元造形装置１０の利便性を高めることができる。
【０１００】
上記実施形態では、正規化処理部５４は、判定物３次元モデルＭ２を回転および移動させることで、判定物３次元モデルＭ２と造形物３次元モデルＭ１の向きと位置がそれぞれ同じになるようにした。しかし、正規化処理部５４は、造形物３次元モデルＭ１を回転および移動させることで、造形物３次元モデルＭ１と判定物３次元モデルＭ２の向きと位置を揃えてもよい。この場合、正規化処理部５４は、まず、造形物３次元モデルＭ１および判定物３次元モデルＭ２の正規化処理を行う。ここでは、正規化処理を行った際の判定物３次元モデルＭ２の変換情報（回転量および移動量など）を記憶部５２に記憶させる。次に、正規化処理部５４は、判定物３次元モデルＭ２の変換情報を反転（回転量および移動量などの正負を反転）させた反転変換情報に基づいて、正規化処理を行った造形物３次元モデルＭ１を回転および移動させる。このことにより、造形物３次元モデルＭ１の向きおよび位置を判定物３次元モデルＭ１の向きおよび位置に揃えることができる。
【符号の説明】
【０１０１】
１０  ３次元造形装置
１８  モニタ
５２  記憶部
５４  正規化処理部
５６  スライスモデル作成部
５９  スライスモデル判定部
６０  一致率算出部
６１  形状判定部
６２  許可部
６４  禁止部
１００  形状判定装置（３次元造形物の形状判定装置）
【図１】
2016124230.tif 000004
【図２】
2016124230.tif 000005
【図３】
2016124230.tif 000006
【図４】
2016124230.tif 000007
【図５】
2016124230.tif 000008
【図６】
2016124230.tif 000009
【図７】
2016124230.tif 000010
【図８】
2016124230.tif 000011
【図９】
2016124230.tif 000012
【図１０】
2016124230.tif 000013
【図１１】
2016124230.tif 000014
【図１２】
2016124230.tif 000015