WO2015182654A1 - 干渉チェックシステム - Google Patents

干渉チェックシステム Download PDF

Info

Publication number
WO2015182654A1
WO2015182654A1 PCT/JP2015/065238 JP2015065238W WO2015182654A1 WO 2015182654 A1 WO2015182654 A1 WO 2015182654A1 JP 2015065238 W JP2015065238 W JP 2015065238W WO 2015182654 A1 WO2015182654 A1 WO 2015182654A1
Authority
WO
WIPO (PCT)
Prior art keywords
model
wiring
check
movable range
data
Prior art date
Application number
PCT/JP2015/065238
Other languages
English (en)
French (fr)
Inventor
敏明 笠井
Original Assignee
株式会社 ランドマークテクノロジー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社 ランドマークテクノロジー filed Critical 株式会社 ランドマークテクノロジー
Priority to US15/314,093 priority Critical patent/US10296697B2/en
Publication of WO2015182654A1 publication Critical patent/WO2015182654A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/394Routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/02CAD in a network environment, e.g. collaborative CAD or distributed simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2113/00Details relating to the application field
    • G06F2113/16Cables, cable trees or wire harnesses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level

Definitions

  • the present invention relates to a technology of an interference check system for checking interference of a 3D model.
  • Patent Document 2 moves each node of the wire harness constrained by an actual restraint tool with respect to the movable range of the wire harness calculated in the same procedure as the technique described in Patent Document 1.
  • the condition data is corrected using the regression equation obtained from the actually measured movable range obtained in advance.
  • Patent Document 3 deforms the wire harness so that it passes through the point designated by the user on the screen. And the technique of patent document 3 determines whether the deformed wire harness interferes with other components.
  • Japanese Patent No. 4641033 Japanese Patent No. 4928528 Japanese Patent No. 4266783
  • Patent Literatures 1 and 2 can calculate a movable range located on a perpendicular line in a straight line connecting the restraints, but do not calculate other movable ranges. That is, when the length of the wiring is sufficiently longer than the length of the straight line connecting the restraining tools, as shown in FIG. 29, the wiring 1201 is applied to the extension destination of the straight line connecting the restraining tools 1211, 1212, which causes a problem. Although there is a possibility, Patent Documents 1 and 2 do not describe this point. Therefore, it cannot be said that the techniques described in Patent Documents 1 and 2 sufficiently calculate the movable range.
  • Patent Documents 1 and 2 do not describe how to use the calculated movable range. Moreover, the technique described in Patent Document 3 does not clearly determine whether the determination of whether the deformed wire harness interferes with other components is performed by a computer or by a person. Even if it is performed by a computer, the user has to specify a route point of wiring, and therefore the burden on the user increases when there are many types of wiring and parts.
  • the present invention has been made in view of such a background, and an object of the present invention is to improve the ease of interference check.
  • the present invention focuses on two fixed points in a wiring model, and the sum of the distance from one focus to a predetermined point and the distance from the other focus to the predetermined point is the wiring
  • a feature is to generate a set of predetermined points to be the length of the model.
  • the ease of interference check can be improved.
  • FIG. 14 (a) is a figure which shows the information regarding a 1st polygon
  • FIG.14 (b) is the information regarding a 1st polygon and a 2nd polygon
  • FIG. 14C is a diagram showing information about edges.
  • FIGS. 17A and 17B are diagrams illustrating a procedure of a sandwiching surface detection process according to the present embodiment, in which FIG. 17A is a top view when two polygons are in contact with each other in a parallel state, and FIG. FIG. 17C is a top view when one of the two polygons is in contact with the other polygon in a tilted state.
  • FIG. 17D is a side view when two polygons are in contact with the other polygon while one of the polygons is inclined. It is a figure which shows the example of the clamping surface intermediate
  • FIG. 21A is a diagram showing an example of check pair list data according to the present embodiment
  • FIG. 21A is a diagram showing an example of check pair list data after the check pair list data generation processing is completed
  • FIG. () Is a diagram showing an example of check pair list data immediately before the blocking check is started.
  • FIG. 26A is a diagram illustrating a blocking check method according to the present embodiment
  • FIG. 26A is a diagram illustrating a case where there is no polygon that interferes with a drawn line segment
  • FIG. It is a figure which shows the case where there exists the polygon which interferes.
  • FIG. 1 is a diagram illustrating a configuration example of an interference check system according to the present embodiment.
  • the interference check system Z at least one server 1 and at least one client terminal 2 are connected via a network 3 such as a LAN (Local Area Network).
  • the server 1 performs an interference check process according to the present embodiment. Further, the client terminal 2 displays the result of the interference check process performed by the server 1.
  • FIG. 2 is a diagram illustrating a configuration example of a server according to the present embodiment.
  • the server 1 includes a memory 11, a storage device 12, a transmission / reception device 13 such as a network interface card, and an arithmetic device 14 such as a CPU (Central Processing Unit).
  • a CPU Central Processing Unit
  • the program stored in the storage device 12 is expanded and executed by the arithmetic device 14, whereby the processing unit 100, the transmission / reception processing unit 111 that operates in the processing unit 100, the reading unit 112, the movable range A list generation unit (movable range setting unit) 113, a movable range calculation unit 114, a check target list generation unit 115, an edge detection unit 116, a check pair list generation unit 117, and a clearance check unit 118 are executed.
  • the processing unit 100 controls each unit 111 to 118.
  • the transmission / reception processing unit 111 transmits / receives information to / from the client terminal 2.
  • the reading unit 112 reads necessary data from the storage device 12 or the like.
  • the movable range list generation unit 113 generates movable range list data 125 in which information regarding the movable range of the wiring is stored. The movable range of wiring will be described later.
  • the movable range calculator 114 calculates the movable range of the wiring.
  • the check target list generation unit 115 generates edge data 127 and sandwiched surface data 129 as check target list data for performing edge detection and sandwiched surface detection. The edge and the sandwiching surface will be described later.
  • the edge detection unit 116 performs edge detection.
  • the check pair list generation unit 117 generates check pair list data 130 that is a pair list of a wiring model for performing a clearance check and a model to be checked (edge or sandwiched surface).
  • the clearance check unit 118 uses the check pair list data 130 generated by the check pair list generation unit 117 to perform a clearance check that determines whether there is a possibility of interference between the wiring and the check target. The processing performed by each unit 110 to 118 will be described later.
  • the storage device 12 such as HD (Hard Disk) or SSD (Solid State Drive) has 3D model data 121, setting data 122, excluded parts list data 123, wiring list data 124, movable range list data 125, edge intermediate data. 126, edge data 127, sandwiched surface intermediate data 128, sandwiched surface data 129, check pair list data 130, and interference data 131 are stored.
  • HD Hard Disk
  • SSD Solid State Drive
  • the 3D model data 121 stores a three-dimensional shape model (hereinafter referred to as a 3D model) of a product (each component, each wiring, etc.) created using 3D CAD or the like.
  • a 3D model of a component is referred to as a component model
  • a 3D model of wiring is referred to as a wiring model.
  • the wiring model is included in the component model.
  • the setting data 122 stores information related to the size of the check rectangular parallelepiped described later.
  • the excluded component list data 123 stores a list of component models (excluded component models) that are not subject to interference check. Examples of excluded parts include wiring, fasteners that fix the wiring, and parts that are determined to have no problem even if they interfere with the wiring.
  • the wiring list data 124 stores a list of wiring models in the 3D model data 121.
  • the movable range list data 125 stores data related to the movable range of each wiring.
  • the edge intermediate data 126 is output at the time of edge detection, and stores intermediate data for generating edge data 127 described later. In the edge data 127, information on edges detected by the check target list generation unit 115 and the edge detection unit 116 is stored.
  • the sandwiching surface intermediate data 128 is output when the sandwiching surface is detected, and stores intermediate data for generating sandwiching surface data 129 described later.
  • the sandwiching surface data 129 stores information related to the sandwiching surface detected by the check target list generation unit 115.
  • the check pair list data 130 stores information on a wiring model and a check target model (edge or sandwiched surface) for performing a clearance check.
  • the interference data 131 stores a result of interference check processing performed by the server 1.
  • the data 121 to 131 will be described later as appropriate.
  • the 3D model data 121, the setting data 122, and the excluded part list data 123 are data created in advance by the user.
  • the wiring list data 124, the movable range list data 125, the edge intermediate data 126, the edge data 127, the sandwiched surface intermediate data 128, the sandwiched surface data 129, the check pair list data 130, and the interference data 131 are subjected to interference check processing by the server 1. It is data generated in.
  • FIG. 3 is a diagram illustrating a configuration example of the client terminal according to the present embodiment.
  • the client terminal 2 includes a memory 21, a storage device 22, a transmission / reception device 23 such as a network interface card, an arithmetic device 24 such as a CPU, an input device 25 such as a keyboard and a mouse, and a display device 26 such as a display.
  • the program stored in the storage device 22 is expanded and executed by the arithmetic device 24, so that the processing unit 200, the transmission / reception processing unit 211 operating in the processing unit 200, and the display processing unit 212 are executed.
  • the processing unit 200 controls the units 211 and 212.
  • the transmission / reception processing unit 211 transmits / receives information to / from the server 1.
  • the display processing unit 212 Based on the 3D model data 121, the movable range list data 125, and the interference data 131 acquired from the server 1, the display processing unit 212 displays information regarding the movable range of the wiring and the interference between the wiring and the component on the display device 26. .
  • the storage device 22 such as HD or SSD stores 3D model data 121, movable range list data 125, interference data 131, and the like. Since these data are the same as those shown in FIG. 2, description thereof is omitted here.
  • the interference check system Z is composed of the server 1 and the client terminal 2, but the present invention is not limited to this, and the client terminal 2 may have the function of the server 1, for example. That is, the processing may be performed stand-alone by the client terminal 2. Further, the storage device 12 of the server 1 may be installed outside the server 1 such as a database. Furthermore, the form in which each function of the server 1 is distributed to a plurality of servers 1 may be employed.
  • FIG. 4 is a diagram illustrating an example of a 3D model display screen according to the present embodiment.
  • the 3D model display screen 300 includes a 3D model display unit 301, a hierarchical structure display unit 302, and a wiring editing unit 303.
  • the 3D model display unit 301 displays a 3D model 311 of the product.
  • the 3D model 311 displays wiring models 321 to 323, end point models 331 and 332, a part model 341, and the like. Identification numbers are assigned in advance to the wiring models 321 to 323, the end point models 331 and 332, and the component models 341, and information is managed for each model by the identification numbers.
  • the identification numbers of the wiring models 321 to 323 are referred to as wiring identification numbers, and the identification number of the component model 341 is referred to as a component identification number. Note that the end point model 331 and fasteners described later are included in the part.
  • Each model is composed of polygons.
  • Each polygon has, as polygon information, the coordinates of each vertex in the polygon and the component of the normal vector of the polygon.
  • information relating to the type of component is stored as attribute information in a format associated with the identification number.
  • the wiring models 321 to 323 have segment information, passing point information, branch point information, thickness information, route type information, and the like.
  • the segment is a line segment as the center line of the wiring model, and the passing point is a point on the segment. That is, the wiring model is composed of segments and passing points.
  • the route type information stores information such as whether the route is a trunk route or a branch route.
  • the coordinates indicate coordinates in the 3D model.
  • the hierarchical structure display section 302 displays the component model and the hierarchical structure relationship of each wiring model.
  • the user selects a part model or a wiring model name on the hierarchical structure display unit 302 via the input device 25, the selected part model or wiring model is highlighted on the 3D model display unit 301.
  • the In the wiring editing unit 303 the user can edit the wiring model. Editing the wiring model includes adding a wiring, changing a route, and the like.
  • FIG. 5 is a diagram illustrating an example of a wiring model according to the present embodiment.
  • reference numerals 401 to 403 denote end point models.
  • the end point models 401 to 403 are shown as end point models (reference numerals 331 and 332 in FIG. 4) in the 3D model data 121 (FIG. 2).
  • Reference numerals 411 and 412 denote fastener models.
  • the fastener models 411 and 412 are fixed points together with the end point models 401 to 403.
  • Reference numeral 421 is a branch point.
  • Reference numeral 441 denotes a trunk route model
  • reference numeral 442 denotes a branch route model.
  • the main route model 441 and the branch route model 442 are not distinguished, and are stored in the 3D model data 121 as one wiring model.
  • the distinction between the main route model 441 and the branch route model 442 is set in step S205 of FIG.
  • Reference numeral 461 indicates a segment of the wiring model, and reference numeral 462 indicates a passing point.
  • a fixed point is a point where wiring, such as an end point and a fastener, does not operate.
  • FIG. 6 is a flowchart showing a procedure of overall processing according to the present embodiment.
  • the reading unit 112 reads 3D model data 121 from the storage device 12 (S101). Then, the reading unit 112 reads the setting data 122 (S102).
  • the movable range list generation unit 113 performs a movable range list data generation process for generating the movable range list data 125 based on the data read in the processes of steps S101 and S102 (S103). Details of the movable range list data generation processing will be described later.
  • the check target list generating unit 115 and the edge detection unit 116 generate check target list data such as edge data 127 and sandwiched surface data 129.
  • Data generation processing is performed (S104). Details of the check target list data generation processing will be described later. Although details will be described later, the check target is a target for interference check with wiring such as an edge or a sandwiched surface.
  • check pair list generation unit 117 performs check pair list data generation processing for generating check pair list data 130 that is all combinations of the wiring model and the check target model (S105). Details of the check pair list data generation process will be described later.
  • the clearance check unit 118 performs a clearance check process for checking each clearance using the check pair list data 130 generated in the process of step S105 (S106). Details of the clearance check process will be described later.
  • the client terminal 2 acquires the 3D model data 121, the movable range list data 125, and the interference data 131 from the server 1.
  • the display processing unit 212 of the client terminal 2 performs display processing for displaying the processing result of step S106 on the display device 26 (S107), and the processing units 100 and 200 end the processing.
  • FIG. 7 is a flowchart showing a procedure of movable range list data generation processing according to the present embodiment.
  • the movable range list data generation process shown in FIG. 7 corresponds to the process in step S103 in FIG.
  • the movable range list generation unit 113 generates wiring list data 124 based on the 3D model data 121 read in step S101 of FIG. 6 (S201).
  • the movable range list generation unit 113 searches the part type information of each model in the 3D model data 121 and specifies a 3D model (wiring model) whose part type is “wiring”. Then, the identification number (wiring identification number) associated with the specified wiring model is stored in the wiring list data 124. In this way, wiring list data 124 that is a list of wiring model identification numbers (wiring identification numbers) is generated.
  • the movable range list generation unit 113 acquires one wiring identification number from the wiring list data 124 (S202). Next, the movable range list generation unit 113 determines whether or not a branch point exists in the wiring model indicated by the acquired wiring identification number (S203). This process is performed by the movable range list generation unit 113 searching for branch point information attached to the wiring model as attribute information. As a result of step S203, when there is no branch point (S203 ⁇ No), the movable range list generating unit 113 advances the process to step S205. If a branch point exists as a result of step S203 (S203 ⁇ Yes), the movable range list generation unit 113 sets a trunk route in the wiring model (S204), and the process proceeds to step S205. The setting of the main route is performed, for example, when the user designates the main route via the input device 25.
  • the movable range list generating unit 113 refers to the wiring model and searches for a fixed point set in the wiring model to be processed (S205).
  • “fixed point search” means searching for an end point model, a fastener model, or the like.
  • the movable range list generation unit 113 determines whether any of the following information is attached as the attribute information of the wiring model.
  • A1 Passing point where a fixed point is explicitly set (a2) End point where a fixed point is explicitly set (eg connector)
  • A3 Branch point when the wiring model to be processed is not a trunk line (in the case of a branch route)
  • the fixed points are the end point models 401 to 403 and the fastener models 411 and 412 as described above.
  • the branch point 421 is not a fixed point in the main route model 441 but is a fixed point in the branch route model 442.
  • the movable range list generation unit 113 searches for fixed points for all passing points on the wiring model to be processed.
  • the movable range list generation unit 113 sets a fixed section to a fixed point as a movable section among the wiring models to be processed (S206). Then, the movable range list generation unit 113 determines whether or not the processing of steps S202 to S206 has been completed for all the wiring models (S207). As a result of step S207, when the process has not been completed for all the wiring models (S207 ⁇ No), the movable range list generation unit 113 returns the process to step S202.
  • step S207 when the processing is completed for all the wiring models (S207 ⁇ Yes), the movable range list generation unit 113 acquires one set movable section (S211). Next, the movable range list generation unit 113 calculates the movable range in the acquired movable section (S212).
  • FIG. 8 is a diagram showing a method for calculating the movable range of the wiring according to the present embodiment.
  • S becomes the movable range (see FIG. 8).
  • P is an arbitrary point on the generated spheroid
  • S is the length of the wiring (segment length) in the movable section.
  • the movable range list generation unit 113 stores the calculated information regarding the inner area of the spheroid as the movable range in the movable range list data 125 (S213).
  • the movable range may be the coordinates of a fixed point (that is, the focal points F 1 and F 2 ) and the calculated spheroid formula.
  • FIG. 9 is a diagram illustrating an example of a movable range of the wiring according to the present embodiment.
  • a spheroid 451 indicates a movable range of the main route model 441 with the end point model 401 and the fastener model 411 as fixed points.
  • the movable section is between the end point model 401 and the fastener model 411.
  • the spheroid 452 indicates the movable range of the main route model 441 with the fastener model 411 and the fastener model 412 as fixed points.
  • the interval between the fastener model 411 and the fastener model 412 is a movable section.
  • the spheroid 453 shows the movable range of the main route model 441 with the fastener model 412 and the end point model 402 as fixed points.
  • the movable section is between the fastener model 412 and the end point model 402.
  • a spheroid 454 indicates a movable range of the branch route model 442 with the branch point 421 and the end point model 403 as fixed points.
  • the movable section is between the branch point 421 and the end point model 403.
  • the branch point 421 is not treated as a fixed point for the main route model 441, but is treated as a fixed point for the branch route model 442.
  • FIG. 10 is a diagram illustrating an example of movable range list data according to the present embodiment.
  • the movable range list data 125 stores a wiring identification number, a first fixed point coordinate, a second fixed point coordinate, and a wiring length.
  • the first fixed point coordinates and the second fixed point coordinates are coordinates of two fixed points that are the focal points of the spheroid. These coordinates are coordinates in the 3D model data 121, and the movable range list generation unit 113 acquires the coordinates of the fixed point in the wiring model from the 3D model data 121 and stores them in the movable range list data 125.
  • the wiring length is the length of the wiring between the first fixed point and the second fixed point.
  • the wiring length is calculated by the movable range list generating unit 113 adding the segment length between the corresponding fixed points in the wiring model, and is stored in the movable range list data 125.
  • the movable range list generation unit 113 determines whether or not the processing of steps S211 to S213 has been completed for all movable sections (S214). If the result of step S214 is that processing has not ended (S214 ⁇ No), the movable range list generating unit 113 returns the processing to step S207. As a result of Step S214, when the processing is completed (S214 ⁇ Yes), the processing unit 100 returns to Step S104.
  • FIG. 11 is a flowchart showing a procedure of check target list data generation processing according to the present embodiment.
  • the check target list data generation process shown in FIG. 11 corresponds to the process of step S104 in FIG. What is generated by this check target list data generation processing is edge data 127 and sandwiched surface data 129.
  • the check target list generation unit 115 generates component list data based on the 3D model data 121 (S301).
  • the parts list data is data in which parts identification numbers are stored in a list format.
  • the check target list generation unit 115 refers to the excluded part list data 123 created in advance, and deletes the part (excluded part) data stored in the excluded part list data 123 from the part list data. (S302). By doing in this way, the following processes can be performed efficiently.
  • step S302 for example, the check target list generation unit 115 searches for the part model corresponding to the part identification number in the part list data, and searches the 3D model data 121 for the part type information in the attribute information of this part model. If the part type information of the part model to be processed is stored in the excluded part list data 123, the check target list generation unit 115 sets the part identification number to be processed to the part list. Exclude from data.
  • FIG. 12 is a diagram illustrating an example of an edge.
  • the edge is a portion that has an acute angle in a component as indicated by reference numeral 501 in FIG. 12, and is a portion that may damage the wiring.
  • the edge detection unit 116 performs edge detection processing (S311).
  • FIG. 13 is a flowchart illustrating a procedure of edge detection processing according to the present embodiment.
  • the edge detection unit 116 selects one record (part identification number) from the part list data, and acquires one polygon (hereinafter referred to as a first polygon) in the part model (S901).
  • the edge detection unit 116 stores side information, which is information about all sides in the first polygon, in the edge intermediate data 126 (S902).
  • step S902 shows information related to the first polygon.
  • the edge detector 116 uses the three sides a1-1 to a1-3 in the first polygon PL11 as side information, along with the part identification number of the part model to be processed and the polygon information to be processed along with edge intermediate data. 126 is stored in the edge information.
  • the polygon information is described as “PL11”, “PL12”,... For convenience as shown in FIG. 14, but in actuality, the coordinates of each vertex of the polygon and the normal vector of the polygon. It is a component.
  • the edge detection unit 116 acquires a polygon (second polygon) adjacent to the first polygon in the component model acquired in step S901 (S903).
  • the adjacent polygon is a polygon having a common side or vertex.
  • the edge detection unit 116 acquires one piece of side information in the acquired second polygon (S904).
  • the edge detection unit 116 determines whether or not the acquired side of the second polygon is the same side as the side of the first polygon (S905). If the result of step S905 is a common side (S905 ⁇ Yes), the edge detection unit 116 advances the process to step S907.
  • step S905 when the sides are not common (S905 ⁇ No), the edge detection unit 116 stores the information (side information) of the side of the second polygon to be processed in the edge intermediate data 126 (S906). ).
  • FIG. 14B is a diagram showing information regarding the first polygon and the second polygon.
  • the edge detecting unit 116 stores information on the sides a2-1 and a2-2 of the second polygon PL21 as side information in the edge intermediate data 126.
  • the side a2-3 is stored in the first polygon PL11 shown in FIG. Therefore, the information on the side a2-3 is not stored in the edge intermediate data 126.
  • step S905 if “Yes” is determined in step S905, or after step S906, has the edge detection unit 116 completed the processes of steps S904 to S906 for all sides of the second polygon? It is determined whether or not (S907). If the result of step S907 is that processing has not ended (S907 ⁇ No), the edge detection unit 116 returns the processing to step S904.
  • step S907 when the processing is finished (S907 ⁇ Yes), as shown in FIG. 14C, the edge detection unit 116 generates the normal vector VE11 of the surface formed by the first polygon PL11, and the second vector VE11.
  • the normal vector VE21 of the surface created by the polygon PL21 is acquired (S908). Since the polygon is managed by information on the coordinates of each vertex in the 3D model and the normal vector component of the polygon, in step S908, the normal vector of the polygon to be processed by the edge detection unit 116 is obtained. All you need to do is get the components. Then, the edge detection unit 116 determines whether or not the angle formed by the normal vectors VE11 and VE21 in FIG. 14C is larger than a predetermined angle (S909).
  • the predetermined angle is an angle at which the edge damages the wiring, for example, 90 °.
  • step S909 when the angle is equal to or smaller than the predetermined angle (S909 ⁇ No), the edge detection unit 116 advances the process to step S911. If the result of step S909 is greater than the predetermined angle (S909 ⁇ Yes), the edge detection unit 116 sets an edge flag in the edge intermediate data 126 (S910).
  • FIG. 14C is a diagram illustrating information regarding edges.
  • the common side a1-3 of the first polygon PL11 and the second polygon PL21 in the edge intermediate data 126 is obtained.
  • the common side a1-3 of the first polygon PL11 and the second polygon PL21 is the edge itself.
  • step S9 determines whether or not the processing in steps S901 to S910 has been completed for all polygon pairs (S911). .
  • step S911 when the processing is not completed (S911 ⁇ No), the edge detection unit 116 returns the process to step S901.
  • step S911 when the processing is completed (S911 ⁇ Yes), the processing unit 100 returns to step S312 of FIG.
  • step S311 the check target list generation unit 115 stores the contents of the edge intermediate data 126 in the edge data 127 (S312), and determines whether or not the processing of steps S311 to S312 has been completed for all the component models. (S313). As a result of step S313, when all the component models have not been completed (S313 ⁇ No), the check target list generation unit 115 returns the process to step S311.
  • step S313 If the result of step S313 indicates that all component models have been completed (S313 ⁇ Yes), the check target list generation unit 115 advances the process to step S321.
  • FIG. 15 is a diagram illustrating an example of edge data according to the present embodiment.
  • the edge data 127 has an edge identification number, a component identification number, and edge information.
  • the edge identification number is a number given by the check target list generation unit 115 and is a number given for each edge. Note that the same edge identification number is assigned to edges that are the same part model and are continuous between polygons.
  • the component identification number stores the component identification number of the target component model.
  • edge information polygon information in which an edge is detected and side information are stored.
  • the stored polygon information and edge information are polygon information and edge information for which an edge flag is set in the edge intermediate data 126 shown in FIG.
  • FIG. 16 is a diagram showing an example of the sandwiching surface.
  • the sandwiching surface is a portion where the surfaces of the two components are connected to face each other (facing each other), for example, wiring between the components when packing or bonding is performed. It is a surface where there is a possibility of being caught. In FIG. 16, the surfaces are in contact with each other.
  • the check target list generation unit 115 acquires two records (component data) from the component list data (S321). Next, the check target list generation unit 115 acquires one polygon from each of the part models in the two acquired records (S322). At this time, the check target list generation unit 115 can also determine whether or not the acquired polygons face each other. That is, the check target list generation unit 115 determines whether or not the two acquired polygons are polygons constituting surfaces facing each other in the acquisition source part with reference to the 3D model data 121. Also good. And when the acquired polygon comprises the mutually opposing surface, the check object list production
  • the check target list generation unit 115 determines whether there are overlapping portions (overlapping portions) in the two polygons as a result of the projection (S324). As a result of step S324, when there is no overlapping part (S324 ⁇ No), the check target list generation unit 115 advances the process to step S327.
  • step S324 when there is an overlapping portion (S324 ⁇ Yes), the check target list generation unit 115 refers to the 3D model data 121 for the polygon to be processed. Then, the check target list generation unit 115 determines whether there is a portion where the distance between overlapping polygons is within the error range (S325).
  • the miscalculation range is, for example, 10 ⁇ 2 mm.
  • FIG. 17 is a diagram illustrating a procedure of the sandwiching surface detection process according to the present embodiment.
  • FIG. 17A is a top view when two polygons are in parallel with each other
  • FIG. 17C is a side view when two polygons are in contact with each other in a parallel state
  • FIG. 17C is a top view when one of the two polygons is in contact with the other polygon in a tilted state
  • FIG. 17D is a side view showing a case where one of the two polygons is in contact with the other polygon in a tilted state. Note that the processing in steps S323 to S325 is processing performed on a polygon, but in FIG.
  • the description will be made assuming that the polygon is a rectangular parallelepiped for the sake of clarity.
  • the height direction of the polygons 601 and 602 is set as the z direction, for example, the upper surface of the polygon 602 is defined as xy.
  • FIG. 17B shows a polygon 601 projected onto the xy plane.
  • a portion where the projected polygons 601 and 602 overlap is a surface 611 in FIGS. 17A and 17B.
  • the check target list generation unit 115 determines that the entire surface 611 is a sandwiched surface. This is because if the distance between the polygon 601 and the polygon 602 is within the error range ⁇ z, there is a possibility that a defect such as scratching or cutting may occur when the wiring is sandwiched.
  • FIG. 17C when the polygon 603 and the polygon 602 have a relationship as shown in FIG. 17C when viewed from the horizontal direction, the height direction of the polygons 603 and 602 is defined as the z direction, and for example, the upper surface of the polygon 602 is defined as xy
  • FIG. 17D shows a projection of the polygon 603 onto the xy plane when the plane is used.
  • a portion where the projected polygons 603 and 602 overlap is a surface 621 (a portion indicated by dots) as shown in FIG.
  • the distance between the polygon 603 and the polygon 602 is within the error range ⁇ z is the surface 622 (the portion indicated by the oblique lines in FIG. 17D).
  • the check target list generation unit 115 determines that there is a possibility of pinching in the surface 622.
  • step S325 when there is no portion within the error range (S325 ⁇ No), the check target list generation unit 115 advances the process to step S327. As a result of step S325, when there is a part within the error range (S325 ⁇ Yes), the check target list generation unit 115 stores the information on the sandwiching surface to be processed (sandwich surface information) in the sandwiching surface intermediate data 128. (S326).
  • FIG. 18 is a diagram illustrating an example of sandwiched surface intermediate data according to the present embodiment.
  • the sandwiching surface intermediate data 128 includes a first part identification number, first polygon information, a second part identification number, and second polygon information.
  • the first component identification number and the second component identification number are the two component identification numbers in the record acquired in step S321.
  • the first polygon information and the second polygon information are information on polygons to be processed in steps S322 to S325.
  • the check target list generation unit 115 may store the coordinates of the overlapping range in the sandwiched surface intermediate data 128.
  • the check target list generation unit 115 determines whether or not the processing of steps S322 to S326 has been completed for all polygon pairs in the two component models to be processed (S327).
  • the check target list generation unit 115 may determine only a pair of adjacent polygons. As a result of step S327, if not all the polygon pairs have been completed (S327 ⁇ No), the check target list generation unit 115 returns the process to step S322.
  • step S327 when all pairs of polygons have been completed (S327 ⁇ Yes), the check target list generation unit 115 stores the contents of the sandwiched surface intermediate data 128 in the sandwiched surface data 129 (S328).
  • the check target list generation unit 115 determines whether or not the pinching determination process has been completed for all pairs of component models in the component list data (S329).
  • the check target list generation unit 115 may determine only a pair of adjacent component models.
  • the check target list generation unit 115 returns the process to step S321.
  • the processing unit 100 returns to the process of step S105 in FIG.
  • FIG. 19 is a diagram illustrating an example of the sandwiching surface data according to the present embodiment.
  • the sandwiching surface data 129 includes a sandwiching surface identification number, a first component identification number, a second component identification number, and polygon set information.
  • the sandwiching surface identification number is a number assigned by the check target list generation unit 115 and is a number assigned to each sandwiching surface. Note that the same sandwiching surface identification number is assigned to the sandwiching surfaces that are the same parts and are continuous between polygons.
  • the first component identification number and the second component identification number are the component identification numbers of the two component models that are determined by the check target list generation unit 115 to be likely to be caught.
  • the polygon set information is information indicating a set of polygons determined by the check target list generation unit 115 to constitute a sandwiched surface. When only a part of the polygon overlaps, the coordinates of the overlapping surface may be added to the polygon set information.
  • FIG. 20 is a flowchart showing a procedure of check pair list data generation processing according to the present embodiment.
  • the check pair list data generation process shown in FIG. 20 corresponds to the process in step S105 in FIG.
  • the check pair list generation unit 117 adds all combinations of the wiring model and the edge model to the check pair list data 130 (S401).
  • the edge model corresponds to information stored in the edge data 127 (FIG. 15).
  • the check pair list generation unit 117 stores the wiring model identification number (wiring identification number) in the wiring identification number of the check pair list data 130, and sets the edge identification number of the edge model in the check pair list data 130. It is stored in the check target identification number (see FIG. 21).
  • the check pair list generation unit 117 adds all combinations of the wiring model and the sandwiched surface model to the check pair list data 130 (S402).
  • the sandwiching surface model corresponds to the information stored in the sandwiching surface data 129 (FIG. 19).
  • the check pair list generation unit 117 stores the wiring model identification number (wiring identification number) in the wiring identification number of the check pair list data 130, and the sandwiched surface identification number of the sandwiched surface model is checked pair list data. It is stored in the check target identification number 130 (see FIG. 21).
  • FIG. 21 is a diagram showing an example of check pair list data according to the present embodiment.
  • FIG. 21A shows the check pair list data 130 after the process shown in FIG. 20 (after the check pair list data generation process ends), and
  • FIG. 21B shows step S508 shown in FIG. This is the check pair list data 130 after the above process is completed (immediately before the blocking check is started).
  • a wiring identification number, a check target identification number, a division unit identification number, a wiring side polygon identification number, a wiring side coordinate, a check target side polygon identification number, and a check target side coordinate are included. It is associated.
  • the information on the division unit identification number, the wiring side polygon identification number, the wiring side coordinates, the check target side polygon identification number, and the check target side coordinates are collectively referred to as shortest distance information as appropriate.
  • the check target identification number is an edge identification number in the edge data 127 (FIG. 15) or a sandwiching surface identification number in the sandwiching surface data 129 (FIG. 19).
  • the shortest distance information (division unit identification number, wiring side polygon identification number, wiring side coordinate, check target side polygon identification number and check target side coordinate) is information stored after specifying the shortest distance point to be described later. Information will be described later. As shown in FIG. 21A, the shortest distance information is blank at the stage of step S402.
  • FIGS. 22 and 23 are flowcharts showing the procedure of clearance check processing according to the present embodiment.
  • the clearance check process shown in FIGS. 22 and 23 corresponds to the process in step S106 in FIG.
  • the clearance check unit 118 acquires one unprocessed record from the check pair list data 130 (FIG. 21) (S501).
  • the clearance check unit 118 calculates a check cuboid including a rectangular parallelepiped (hereinafter referred to as a check cuboid) including the movable range of the wiring model corresponding to the wiring identification number included in the acquired record and a check target model.
  • a check cuboid a check cuboid including a rectangular parallelepiped (hereinafter referred to as a check cuboid) including the movable range of the wiring model corresponding to the wiring identification number included in the acquired record and a check target model.
  • the check target model is a model corresponding to the check target identification number included in the acquired record.
  • FIG. 24 is a diagram illustrating an example of a check rectangular parallelepiped according to the present embodiment.
  • the check rectangular parallelepiped is a rectangular parallelepiped that covers the component models 711 and 712 and the wiring model 713. It should be noted that it is possible for the user to set how much room the check rectangular parallelepipeds 711 to 713 have with respect to the component models 711 and 712 and the wiring model 713. Such settings are stored in the setting data 122.
  • the clearance check unit 118 determines whether or not the check rectangular parallelepipeds calculated in step S502 interfere with each other (S503).
  • the reason for checking the presence or absence of interference between the check rectangular parallelepiped is to remove the wiring model and the check target model (part model having an edge or a sandwiched surface) that are separated from each other from the target of the clearance check described later. . Thereby, processing efficiency can be improved. If the check box of the movable range and the check box of the check target model do not interfere as a result of step S503 (S503 ⁇ No), the clearance check unit 118 deletes the record to be processed from the check pair list data 130 (S507), and the process proceeds to step S508.
  • step S503 if there is a location where there is an interference between the check box of the movable range and the check box of the check target model (S503 ⁇ Yes), the clearance check unit 118 divides the wiring model by a predetermined length. (S504). In the wiring model, each divided model is referred to as a division unit. Then, the clearance check unit 118 adds the records to be processed in the interference check data 130 by the number of division units generated as indicated by reference numerals 801 to 803 in FIG. A division unit identification number (division unit identification number) is stored in each record.
  • the clearance check unit 118 identifies a point (shortest distance point) that is the shortest distance between the division unit to be processed and the check target model (S505). Since the specification of the shortest distance point is a known technique, the description thereof is omitted here.
  • the specified information is the wiring side polygon, the wiring side coordinate, the check target side polygon, and the check target side coordinate.
  • the clearance check unit 118 stores the shortest distance information as a processing result in the check pair list data 130 (S506).
  • FIG. 25 is a diagram for explaining the shortest distance point according to the present embodiment.
  • the wiring model 1301 is divided into a plurality of division units 1311.
  • a line 1331 indicating the shortest distance from each of the division units 1311 to the component models 1321 and 1322 is shown.
  • the coordinates on the wiring model 1301 side are the wiring side coordinates in the check pair list data 130, and the polygon to which the wiring side coordinates belong is the wiring side polygon.
  • the coordinates on the check target (part models 1321, 1322) side of the end points of each line 1331 are the check target side coordinates in the check pair list data 130, and the polygon to which the check target side coordinates belong is the check target. It is a side polygon.
  • step S508 determines whether or not the processing in steps S501 to S507 has been completed for all the records in the check pair list data 130. (S508). As a result of step S508, when the processing has not been completed for all records (S508 ⁇ No), the clearance check unit 118 returns the processing to step S501. If it is determined in step S508 that the processing has been completed for all records (S508 ⁇ Yes), the processing proceeds to step S521 in FIG.
  • step S508 After “Yes” is determined in step S508, the clearance check unit 118 acquires one record from the check pair list data 130 (S521 in FIG. 23). Then, the clearance check unit 118 acquires the shortest distance information (division unit identification number, wiring side polygon identification number, wiring side coordinate, check target side polygon identification number, and check target side coordinate) from the acquired record (S522). Next, the clearance check unit 118 draws a line segment connecting the wiring side coordinates and the check target side coordinates in the acquired shortest distance information on the 3D model data 121 (S523). Then, the clearance check unit 118 determines whether or not there is a polygon on the 3D model data 121 that interferes with the drawn line segment (S524).
  • the clearance check unit 118 determines whether or not there is a polygon on the 3D model data 121 that interferes with the drawn line segment (S524).
  • FIG. 26 is a diagram showing a blocking check method according to the present embodiment.
  • FIG. 26A is a diagram showing a case where there is no polygon that interferes with the drawn line segment
  • FIG. It is a figure which shows the case where there exists a polygon which interferes with a line segment.
  • a line segment 901 is a line segment drawn in step S523.
  • FIG. 26A there is no part model (polygon) that interferes with the line segment 901.
  • the clearance check unit 118 determines “No” in step S524.
  • the part model 911 (polygon of the part model 911) interferes with the line segment 901.
  • the clearance check unit 118 determines “Yes” in step S524.
  • step S524 when there is an interfering polygon (S524 ⁇ Yes), the clearance check unit 118 deletes the record to be processed from the check pair list data 130 (S551), and proceeds to step S561. .
  • step S524 when there is no interfering polygon (S524 ⁇ No), the clearance check unit 118, among the two points of the shortest distance information acquired in step S521, a point belonging to the check target model (that is, the check target) The point indicated by the side coordinates is acquired (S531). That is, the information actually acquired in step S531 is the check target side coordinates.
  • the clearance check unit 118 generates a check cuboid on the 3D model data 121 for the part model stored in the fastener model and the excluded part list data (S532). Then, the clearance check unit 118 determines whether or not the point acquired in step S531 is included in the check cuboid generated in step S532 (S533).
  • step S533 when included in the check rectangular parallelepiped (S533 ⁇ Yes), the clearance check unit 118 deletes the record to be processed from the check pair list data 130 (S551), and advances the process to step S561. .
  • the clearance check unit 118 sets the check target model side out of the two points of the shortest distance information stored in the record acquired in step S521.
  • the point to which it belongs that is, the point indicated by the check target side coordinates
  • the clearance check unit 118 acquires the movable range information of the wiring model included in the record acquired in step S521 from the movable range list data 125 (FIG. 10) (S542). Next, the clearance check unit 118 determines whether or not the point acquired in step S541 is included inside the movable range in step S542 (S543). If it is not included as a result of step S543 (S543 ⁇ No), the clearance check unit 118 deletes the record to be processed from the check pair list data 130 (S551).
  • step S543 If it is included as a result of step S543 (S543 ⁇ Yes), the clearance check unit 118 completes the processing of steps S521 to S524, S531 to S533, S541 to S543, and S551 for all the records in the check pair list data 130. It is determined whether or not (S561).
  • step S561 when the processing has not been completed for all records (S561 ⁇ No), the clearance check unit 118 returns the processing to step S521.
  • step S561 when all the records have been processed (S561 ⁇ Yes), the contents of the check pair list data 130 are copied to the interference data 131 (S562), and the processing unit 100 proceeds to step S107 in FIG. Return processing. Since the content of the interference data 131 is obtained by deleting a record that is determined not to cause interference from the check pair list data 130 of FIG. 21, illustration and description thereof are omitted here.
  • FIG. 27 is a diagram illustrating an example of an interference check result screen according to the present embodiment. Since the 3D model display screen 300a as the interference result check result screen has the same configuration as that of the 3D model display screen 300 shown in FIG. Is omitted.
  • the movable range of the wiring model 322 is displayed as a spheroid 1001. For example, when the user clicks or right-clicks the wiring model 322 via the mouse (input device 25) and then selects “Display movable range”, the spheroid 1001 is displayed. The spheroid 1001 is displayed when the display processing unit 212 refers to the movable range list data 125.
  • a portion (edge) where interference with the wiring model 322 may occur is highlighted as a reference numeral 1011. This highlighting is displayed when the display processing unit 212 refers to the interference data 131.
  • the shortest distance line may be displayed by the display processing unit 212 referring to the shortest distance information of the interference data 131.
  • FIG. 28 is a diagram showing another example of the interference check result screen according to the present embodiment.
  • the interference check result screen 1100 is displayed when, for example, “component information display” or the like is selected and input from the right click on the 3D model display screen 300a of FIG.
  • the part name of the wiring model stored as attribute information of the wiring model in the 3D model data 121
  • the wiring model as shown by reference numeral 1102. Possible forms of interference (edges, pinching) are displayed.
  • the wiring identification number, the check target identification number, and the shortest distance information are stored in the interference data 131.
  • the interference data 131 relates to a region included in the movable range (spheroid). Information may be stored. Alternatively, when the display processing unit 212 of the client terminal 2 displays the interference check result screen, only the part included in the movable range of the check target model may be highlighted.
  • the wiring 1201 may be placed on an extension line connecting the end points 1211 and 1212.
  • each node is placed at the apex of a triangle having a straight line connecting the restraints (end points) fixing the wire harness (wiring) as the base and two line segments on both sides of the node. Is set, the movable range of the wire harness (wiring) is calculated.
  • this method cannot cope with the case as shown in FIG.
  • the two fixed points in the wiring model are the focal points, and the sum of the distance from one focal point to the predetermined point and the distance from the other focal point to the predetermined point is:
  • a set of predetermined points (spheroid) that is the length of the wiring model is used as the movable range of the wiring.
  • the calculated movable range of the wiring by using the calculated movable range of the wiring, it is possible to use the calculated movable range of the wiring without human intervention by checking whether or not the other part model interferes. Interference check between wiring and parts is possible.
  • the interference check system Z determines whether or not the edge where the angle between the first surface and the second surface is equal to or less than a predetermined angle interferes with the movable range. By doing so, it is possible to easily check the interference between the wiring and the edge that may cut or damage the wiring.
  • the interference check system Z includes a first surface constituting the first part model and a second part model different from the first part model. Whether the set movable range interferes with the first part model by determining whether or not the sandwiched surface and the movable range interfere with each other in the sandwiched surface whose distance from the surface is equal to or less than a predetermined value Determine whether or not.
  • the interference check system Z according to the present embodiment can easily perform interference check between the pinching surface and the wiring which may damage or cut the wiring by pinching the wiring. Can do.
  • the interference check system Z determines whether or not a second part model different from the first part model exists between the wiring model and the first part model, If it exists, it is not determined whether or not the set movable range interferes with the first component model different from the wiring model. As a result, if there is another part between the wiring and the part that is subject to interference check, it is determined that there is no possibility of interference between the wiring and the part that is subject to interference check. The By doing so, an interference check closer to the actual wiring state can be performed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Processing Or Creating Images (AREA)
  • Architecture (AREA)
  • Software Systems (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

 干渉チェックの精度を高めるため、3次元モデルデータ中における配線の3次元形状モデルである配線モデルにおいて、配線モデルにおける2つの固定点を焦点とし、一方の焦点から所定の点までの距離と、他方の焦点から所定の点までの距離との合計が、配線モデルの長さとなるような所定の点の集合を生成する可動範囲算出部(114)と、該所定の点の集合の内側を配線の可動範囲として設定する可動範囲リスト生成部(115)と、設定された可動範囲を表示部に表示させる表示処理部と、を有することを特徴とする。

Description

干渉チェックシステム
 本発明は、3Dモデルの干渉をチェックする干渉チェックシステムの技術に関する。
 基板等における配線の設計において、例えば、3D-CAD(3Dimension-Computer Aided Design)等での設計段階で、コンピュータによる干渉チェックが行われることが望まれている。
 このような技術に関連し、例えば、特許文献1~3に記載の技術が開示されている。ここで、特許文献1に記載の技術では、まずワイヤハーネス(配線)が複数の節点に分割される。そして、ワイヤハーネスを固定している拘束点(固定具)を結ぶ直線を底辺とし、節点両側の線分長を2辺とする三角形の頂点に各節点が位置設定される。このようにして、特許文献1に記載の技術は、ワイヤハーネスの可動範囲を算出している。
 また、特許文献2に記載の技術は、特許文献1に記載の技術と同様の手順で算出したワイヤハーネスの可動範囲に対して、実際の拘束具で拘束したワイヤハーネスの各節点を移動させることで予め得た実測可動範囲から求めた回帰式を用いて条件データの補正を行っている。
 さらに、特許文献3に記載の技術は、ユーザが画面上に指示した点を通るよう、ワイヤハーネスを変形させている。そして、特許文献3に記載の技術は、変形したワイヤハーネスが他の部品と干渉するか否かを判定する。
特許第4641033号明細書 特許第4928528号明細書 特許第4266783号明細書
 特許文献1,2に記載の技術は、例えば、拘束具を結ぶ直線における垂線上に位置する可動範囲を算出することができるが、これ以外の可動範囲を算出していない。すなわち、配線の長さが、拘束具を結ぶ直線の長さより十分に長い場合、図29に示すように、拘束具1211,1212を結ぶ直線の延長先に配線1201がかかり、不具合の原因となるおそれがあるが、この点について特許文献1,2には記載がない。従って、特許文献1,2に記載の技術は、十分に可動範囲を算出しているとはいえない。
 さらに、特許文献1,2には、算出した可動範囲をどのように活用するのかについての記載がない。
 また、特許文献3に記載の技術は、変形したワイヤハーネスが他の部品と干渉するか否かの判定が、コンピュータによって行われるのか、人によって行われるのかが判然としてない。仮に、コンピュータによって行われるとしても、ユーザが配線の経由点を指定しなくてはならないので、配線や、部品の種類が多い場合にはユーザの負担が大きくなる。
 このような背景に鑑みて本発明がなされたのであり、本発明は、干渉チェックの容易性を高めることを課題とする。
 前記課題を解決するため、本発明は、配線モデルにおける2つの固定点を焦点とし、一方の焦点から所定の点までの距離と、他方の焦点から所定の点までの距離との合計が、配線モデルの長さとなるような所定の点の集合を生成することを特徴とする。
 本発明によれば、干渉チェックの容易性を高めることができる。
本実施形態に係る干渉チェックシステムの構成例を示す図である。 本実施形態に係るサーバの構成例を示す図である。 本実施形態に係るクライアント端末の構成例を示す図である。 本実施形態に係る3Dモデル表示画面の例を示す図である。 本実施形態に係る配線モデルの例を示す図である。 本実施形態に係る全体処理の手順を示すフローチャートである。 本実施形態に係る可動範囲リストデータ生成処理の手順を示すフローチャートである。 本実施形態に係る配線の可動範囲の算出方法を示す図である。 本実施形態に係る配線の可動範囲例を示す図である。 本実施形態に係る可動範囲リストデータの例を示す図である。 本実施形態に係るチェック対象リストデータ生成処理の手順を示すフローチャートである。 エッジの例を示す図である。 本実施形態に係るエッジ検出処理の手順を示すフローチャートである。 本実施形態に係るエッジ検出処理の手順を示す図であり、図14(a)は第1ポリゴンに関する情報を示す図であり、図14(b)は第1ポリゴンと、第2ポリゴンとに関する情報を示す図であり、図14(c)はエッジに関する情報を示す図である。 本実施形態に係るエッジデータの例を示す図である。 挟み込み面の例を示す図である。 本実施形態に係る挟み込み面検出処理の手順を示す図であり、図17(a)は2つのポリゴンが平行な状態で接している場合の上面図であり、図17(b)は2つのポリゴンが平行な状態で接している場合の側面図であり、図17(c)は2つのポリゴンのうち、一方のポリゴンが傾いた状態で他方のポリゴンに接している場合の上面図であり、図17(d)は2つのポリゴンのうち、一方のポリゴンが傾いた状態で他方のポリゴンに接している場合の側面図である。 本実施形態に係る挟み込み面中間データの例を示す図である。 本実施形態に係る挟み込み面データの例を示す図である。 本実施形態に係るチェックペアリストデータ生成処理の手順を示すフローチャートである。 本実施形態に係るチェックペアリストデータの例を示す図であり、図21(a)はチェックペアリストデータ生成処理が終了した後のチェックペアリストデータの例を示す図であり、図21(b)は遮りチェックが開始される直前におけるチェックペアリストデータの例を示す図である。 本実施形態に係るクリアランスチェック処理の手順を示すフローチャートである(その1)。 本実施形態に係るクリアランスチェック処理の手順を示すフローチャートである(その2)。 本実施形態に係るチェック直方体の例を示す図である。 本実施形態に係る最短距離の例を示す図である。 本実施形態に係る遮りチェック方法を示す図であり、図26(a)は描画された線分と干渉するポリゴンがない場合を示す図であり、図26(b)は描画された線分と干渉するポリゴンがある場合を示す図である。 本実施形態に係る干渉チェック結果画面の例を示す図である。 本実施形態に係る干渉チェック結果画面の別の例を示す図である。 端点を結ぶ直線の延長上に配線がかかっている場合を示す図である。
 次に、本発明を実施するための形態(「実施形態」という)について、適宜図面を参照しながら詳細に説明する。
(システム構成)
 図1は、本実施形態に係る干渉チェックシステムの構成例を示す図である。
 干渉チェックシステムZは、少なくとも1台のサーバ1と、少なくとも1台のクライアント端末2とが、LAN(Local Area Network)等のネットワーク3を介して接続されている。
 サーバ1は、本実施形態に係る干渉チェック処理を行う。また、クライアント端末2は、サーバ1で行われた干渉チェック処理の結果を表示する。
(サーバ)
 図2は、本実施形態に係るサーバの構成例を示す図である。
 サーバ1は、メモリ11と、記憶装置12と、ネットワークインタフェースカード等の送受信装置13と、CPU(Central Processing Unit)等の演算装置14を有している。
 メモリ11には、記憶装置12に格納されているプログラムが展開され、演算装置14によって実行されることで、処理部100、及び処理部100で動作する送受信処理部111、読込部112、可動範囲リスト生成部(可動範囲設定部)113、可動範囲算出部114、チェック対象リスト生成部115、エッジ検出部116、チェックペアリスト生成部117、クリアランスチェック部118が実行されている。
 処理部100は、各部111~118を制御する。
 送受信処理部111は、クライアント端末2との間で情報の送受信を行う。
 読込部112は、記憶装置12等から必要なデータを読み込む。
 可動範囲リスト生成部113は、配線の可動範囲に関する情報が格納される可動範囲リストデータ125を生成する。配線の可動範囲については後記する。
 可動範囲算出部114は、配線の可動範囲を算出する。
 チェック対象リスト生成部115は、エッジ検出や、挟み込み面の検出を行うためのチェック対象リストデータとしてのエッジデータ127及び挟み込み面データ129を生成する。エッジ及び挟み込み面については、後記して説明する。
 エッジ検出部116は、エッジの検出を行う。
 チェックペアリスト生成部117は、クリアランスチェックを行うための配線モデルと、チェック対象モデル(エッジ又は挟み込み面)とのペアリストであるチェックペアリストデータ130を生成する。
 クリアランスチェック部118は、チェックペアリスト生成部117が生成したチェックペアリストデータ130を用いて、配線と、チェック対象とが干渉する可能性があるか否かを判定するクリアランスチェックを行う。
 なお、各部110~118が行う処理は後記して説明する。
 HD(Hard Disk)や、SSD(Solid State Drive)等の記憶装置12には、3Dモデルデータ121、設定データ122、除外部品リストデータ123、配線リストデータ124、可動範囲リストデータ125、エッジ中間データ126、エッジデータ127、挟み込み面中間データ128、挟み込み面データ129、チェックペアリストデータ130、干渉データ131を格納している。
 3Dモデルデータ121には、3DCAD等を用いて作成された製品(各部品、各配線等)の3次元形状モデル(以下、3Dモデルと称する)が格納されている。以下、部品の3Dモデルを部品モデルと称し、配線の3Dモデルを配線モデルと称する。また、実配線や、実部品に関する場合、「部品」、「配線」と記載し、部品モデル、配線モデルと区別する。ちなみに、配線モデルは、部品モデルに含まれる。
 設定データ122には、後記するチェック直方体の大きさ等に関する情報が格納されている。
 除外部品リストデータ123には、干渉チェックの対象外となる部品モデル(除外部品のモデル)のリストが格納されている。除外部品の例として、配線や、配線を固定する留め具や、配線と干渉しても問題がないと判定された部品がある。
 配線リストデータ124には、3Dモデルデータ121中における配線モデルのリストが格納されている。
 可動範囲リストデータ125には、各配線の可動範囲に関するデータが格納されている。
 エッジ中間データ126には、エッジ検出の際に出力されるもので、後記するエッジデータ127を生成するための中間データが格納されている。
 エッジデータ127には、チェック対象リスト生成部115及びエッジ検出部116によって検出されたエッジに関する情報が格納されている。
 挟み込み面中間データ128には、挟み込み面検出の際に出力されるもので、後記する挟み込み面データ129を生成するための中間データが格納されている。
 挟み込み面データ129には、チェック対象リスト生成部115によって検出された挟み込み面に関する情報が格納されている。
 チェックペアリストデータ130には、クリアランスチェックを行うための、配線モデルと、チェック対象モデル(エッジ又は挟み込み面)との情報等が格納されている。
 干渉データ131は、サーバ1が行う干渉チェック処理の結果が格納されている。
 なお、各データ121~131については、適宜後記して説明する。また、3Dモデルデータ121、設定データ122、除外部品リストデータ123は、予めユーザによって作成されるデータである。そして、配線リストデータ124、可動範囲リストデータ125、エッジ中間データ126、エッジデータ127、挟み込み面中間データ128、挟み込み面データ129、チェックペアリストデータ130、干渉データ131は、サーバ1による干渉チェック処理中で生成されるデータである。
(クライアント端末)
 図3は、本実施形態に係るクライアント端末の構成例を示す図である。
 クライアント端末2は、メモリ21と、記憶装置22と、ネットワークインタフェースカード等の送受信装置23と、CPU等の演算装置24と、キーボードや、マウス等の入力装置25と、ディスプレイ等の表示装置26とを有している。
 メモリ21には、記憶装置22に格納されているプログラムが展開され、演算装置24によって実行されることで、処理部200、及び処理部200で動作する送受信処理部211、表示処理部212が実行されている。
 処理部200は、各部211,212を制御する。
 送受信処理部211は、サーバ1との間で情報の送受信を行う。
 表示処理部212は、サーバ1から取得した3Dモデルデータ121、可動範囲リストデータ125、干渉データ131を基に、配線の可動範囲や、配線と部品との干渉に関する情報を表示装置26に表示する。
 HDや、SSD等の記憶装置22には、3Dモデルデータ121、可動範囲リストデータ125、干渉データ131等が格納されている。これらのデータは、図2に示すものと同様であるので、ここでは説明を省略する。
 ちなみに、本実施形態では、干渉チェックシステムZがサーバ1と、クライアント端末2から構成されるとしたが、これに限らず、例えば、クライアント端末2がサーバ1の機能を有していてもよい。つまり、クライアント端末2によるスタンドアロンで処理が行われてもよい。また、サーバ1の記憶装置12は、データベース等、サーバ1外に設置されるものでもよい。さらに、サーバ1の各機能が複数のサーバ1に分散される形態でもよい。
 以降の説明では、図1~図3を適宜参照する。
 図4は、本実施形態に係る3Dモデル表示画面の例を示す図である。
 3Dモデル表示画面300は、3Dモデル表示部301、階層構造表示部302、配線編集部303を有している。
 3Dモデル表示部301には、製品の3Dモデル311が表示されている。3Dモデル311は、配線モデル321~323、端点モデル331,332、部品モデル341等が表示されている。
 各配線モデル321~323や、端点モデル331,332や、部品モデル341には、識別番号が予め付与されており、各モデルはこの識別番号によって情報が管理されている。なお、識別番号のうち、配線モデル321~323の識別番号を配線識別番号と称し、部品モデル341の識別番号を部品識別番号と称する。なお、端点モデル331や、後記する留め具は、部品に含まれるものとする。
 各モデルはポリゴンで構成されている。各ポリゴンは、ポリゴン情報として、ポリゴンにおける各頂点の座標、及びポリゴンの法線ベクトルの成分を有している。さらに、各モデルには、識別番号に付随する形式で、部品の種類に関する情報(部品種類情報:端点、留め具等)等が属性情報として格納されている。
 また、配線モデル321~323は、ポリゴン情報の他にセグメント情報、通過点情報、分岐点情報、太さ情報、経路種別情報等を有している。
 ここで、セグメントとは、配線モデルの中心線としての線分であり、通過点とは、セグメント上の点である。つまり、配線モデルはセグメントと、通過点とからなる。経路種別情報には、幹線経路であるか、分岐経路であるかといった情報が格納されている。
 なお、本実施形態において、座標とは3Dモデル中の座標を示すものとする。
 ちなみに、階層構造表示部302には、各部品モデルや、各配線モデルの階層構造関係が表示されている。ユーザが入力装置25を介して、階層構造表示部302で、部品モデルや、配線モデルの名称を選択することで、選択された部品モデルや、配線モデルが、3Dモデル表示部301において強調表示される。
 また、配線編集部303において、ユーザは配線モデルの編集を行うことができる。配線モデルの編集とは、配線の追加や、経路の変更等である。
(配線モデル)
 図5は、本実施形態に係る配線モデルの例を示す図である。
 図5において、符号401~403は端点モデルである。この端点モデル401~403は、3Dモデルデータ121(図2)中においては端点モデル(図4の符号331,332)として示される。
 また、符号411,412は留め具モデルである。後記する配線の可動範囲算出では、端点モデル401~403とともに、この留め具モデル411,412が固定点とされる。
 そして、符号421は分岐点である。
 また、符号441は幹線経路モデルであり、符号442は分岐経路モデルである。初期状態では、幹線経路モデル441と分岐経路モデル442は区別されておらず、1つの配線モデルとして3Dモデルデータ121に格納されている。幹線経路モデル441と分岐経路モデル442との区別は、後記する図7のステップS205で設定される。
 なお、符号461は配線モデルのセグメントを示し、符号462は通過点を示している。
 また、固定点とは、端点や、留め具等、配線が稼働しない点である。
(全体処理)
 図6は、本実施形態に係る全体処理の手順を示すフローチャートである。
 まず、読込部112が記憶装置12から3Dモデルデータ121を読み込む(S101)。
 そして、読込部112が設定データ122を読み込む(S102)。
 次に、可動範囲リスト生成部113が、ステップS101,S102の各処理で読み込んだデータを基に、可動範囲リストデータ125を生成する可動範囲リストデータ生成処理を行う(S103)。可動範囲リストデータ生成処理の詳細は後記する。
 続いて、ステップS101で読み込んだ3Dモデルデータ121等を基に、チェック対象リスト生成部115や、エッジ検出部116がエッジデータ127や、挟み込み面データ129といったチェック対象リストデータを生成するチェック対象リストデータ生成処理を行う(S104)。チェック対象リストデータ生成処理の詳細は後記する。なお、詳細は後記するが、チェック対象とはエッジや、挟み込み面等といった配線との干渉チェックの対象となるものである。
 そして、チェックペアリスト生成部117が、配線モデルと、チェック対象モデルとのすべての組み合わせであるチェックペアリストデータ130を生成するチェックペアリストデータ生成処理を行う(S105)。チェックペアリストデータ生成処理の詳細は後記する。
 次に、クリアランスチェック部118が、ステップS105の処理において生成されたチェックペアリストデータ130を用いて、各クリアランスのチェックするクリアランスチェック処理を行う(S106)。クリアランスチェック処理の詳細は後記する。
 そして、クライアント端末2がサーバ1から3Dモデルデータ121や、可動範囲リストデータ125や、干渉データ131を取得する。その後、クライアント端末2の表示処理部212が、ステップS106の処理結果を表示装置26に表示する表示処理を行い(S107)、処理部100,200は処理を終了する。
(可動範囲リストデータ生成処理:S103)
 図7は、本実施形態に係る可動範囲リストデータ生成処理の手順を示すフローチャートである。なお、図7に示される可動範囲リストデータ生成処理は図6のステップS103の処理に相当するものである。
 まず、可動範囲リスト生成部113は、図6のステップS101で読み込んだ3Dモデルデータ121を基に、配線リストデータ124を生成する(S201)。
 つまり、可動範囲リスト生成部113は、3Dモデルデータ121の各モデルの部品種類情報を検索し、部品種類が「配線」となっている3Dモデル(配線モデル)を特定する。そして、特定した配線モデルに付随している識別番号(配線識別番号)を配線リストデータ124に格納する。
 このようにすることで、配線モデルの識別番号(配線識別番号)のリストである配線リストデータ124が生成される。
 次に、可動範囲リスト生成部113は、配線リストデータ124からの配線識別番号を1つ取得する(S202)。
 次に、可動範囲リスト生成部113は、取得した配線識別番号が示す配線モデルに分岐点が存在するか否かを判定する(S203)。この処理は、可動範囲リスト生成部113が、配線モデルに属性情報として付随している分岐点情報を検索することで行われる。
 ステップS203の結果、分岐点が存在しない場合(S203→No)、可動範囲リスト生成部113は、ステップS205へ処理を進める。
 ステップS203の結果、分岐点が存在する場合(S203→Yes)、可動範囲リスト生成部113は、配線モデルにおける幹線経路を設定し(S204)、ステップS205へ処理を進める。幹線経路の設定は、例えば、ユーザが入力装置25を介して幹線経路を指定すること等で行われる。
 そして、可動範囲リスト生成部113は、配線モデルを参照して、処理対象となっている配線モデルに設定されている固定点を検索する(S205)。「固定点の検索」とは、換言すると、端点モデルや、留め具モデル等を探すことである。固定点の検索処理において、具体的には、可動範囲リスト生成部113は、配線モデルの属性情報として、以下の情報のうち、いずれかの情報が付されているか否かを判定する。
(a1)明示的に固定点が設定されている通過点
(a2)明示的に固定点が設定されている端点(例:コネクタ等)
(a3)処理対象となっている配線モデルが幹線ではない場合(分岐経路の場合)における分岐点
(a4)留め具を通る通過点もしくは留め具の中心に一番近いセグメントの点
 図5に示す配線モデルの例において、前記のように固定点は端点モデル401~403及び留め具モデル411,412となる。
 また、分岐点421は、幹線経路モデル441では固定点とならないが、分岐経路モデル442では固定点となる。
 可動範囲リスト生成部113は、処理対象となっている配線モデル上におけるすべての通過点について固定点の検索を行う。
 図7に説明を戻す。
 次に、可動範囲リスト生成部113は、処理対象となっている配線モデルのうち、固定点から固定点までを可動区間として設定する(S206)。
 そして、可動範囲リスト生成部113は、すべての配線モデルに対してステップS202~S206の処理を終了したか否かを判定する(S207)。
 ステップS207の結果、すべての配線モデルに対して処理が終了していない場合(S207→No)、可動範囲リスト生成部113はステップS202へ処理を戻す。
 ステップS207の結果、すべての配線モデルに対して処理が終了している場合(S207→Yes)、可動範囲リスト生成部113は、設定した可動区間を1つ取得する(S211)。
 次に、可動範囲リスト生成部113は、取得した可動区間における可動範囲を算出する(S212)。
 ここで、図8を参照して、ステップS212の説明を行う。図8は本実施形態に係る配線の可動範囲の算出方法を示す図である。
 具体的には、図8に示すように、固定点を焦点(F,F)としたとき、|PF|+|PF|=Sとなる回転楕円体が可動範囲となる(図8では、2次元の楕円で示されているが、実際にはこの楕円を回転させた3次元の回転楕円体となる)。
 ここで、Pは生成される回転楕円体上の任意の点であり、Sは可動区間における配線の長さ(セグメントの長さ)である。
 図7に説明を戻す。
 そして、可動範囲リスト生成部113は、算出された回転楕円体の内部領域に関する情報を可動範囲として、可動範囲リストデータ125に格納する(S213)。可動範囲は、固定点(すなわち、焦点F,F)の座標と、算出された回転楕円体の式等としてもよい。
 図9は、本実施形態に係る配線の可動範囲例を示す図である。なお、図9において、図5と同様の要素については、図5と同一の符号を付して説明を省略する。
 回転楕円体451は、端点モデル401と留め具モデル411とを固定点とした幹線経路モデル441の可動範囲を示している。この場合、端点モデル401と留め具モデル411との間が可動区間となる。
 同様に、回転楕円体452は、留め具モデル411と留め具モデル412とを固定点とした幹線経路モデル441の可動範囲を示している。この場合、留め具モデル411と留め具モデル412との間が可動区間となる。
 さらに、回転楕円体453は、留め具モデル412と端点モデル402とを固定点とした幹線経路モデル441の可動範囲を示している。この場合、留め具モデル412と端点モデル402との間が可動区間となる。
 そして、回転楕円体454は、分岐点421と端点モデル403とを固定点とした分岐経路モデル442の可動範囲を示している。この場合、分岐点421と端点モデル403との間が可動区間となる。
 このように、分岐点421は、幹線経路モデル441に対しては固定点として扱われないが、分岐経路モデル442に対しては固定点として扱われる。
 図10は、本実施形態に係る可動範囲リストデータの例を示す図である。
 図10に示すように、可動範囲リストデータ125には、配線識別番号と、第1固定点座標と、第2固定点座標と、配線長とが格納されている。
 第1固定点座標と、第2固定点座標は、回転楕円体の焦点となる2つの固定点の座標である。これらの座標は、3Dモデルデータ121中の座標であり、可動範囲リスト生成部113が配線モデルにおける固定点の座標を3Dモデルデータ121から取得し、可動範囲リストデータ125に格納する。
 配線長は、第1固定点及び第2固定点間における配線の長さである。配線長は、配線モデルにおいて、該当する固定点間のセグメント長を可動範囲リスト生成部113が加算することで算出され、可動範囲リストデータ125に格納される。
 図7の説明に戻る。
 続いて、可動範囲リスト生成部113は、すべての可動区間についてステップS211~S213の処理を終了したか否かを判定する(S214)。
 ステップS214の結果、処理を終了していない場合(S214→No)、可動範囲リスト生成部113はステップS207へ処理を戻す。
 ステップS214の結果、処理を終了している場合(S214→Yes)、処理部100はステップS104へリターンする。
(チェック対象リストデータ生成処理:S104)。
 図11は、本実施形態に係るチェック対象リストデータ生成処理の手順を示すフローチャートである。
 なお、図11に示されるチェック対象リストデータ生成処理は図6のステップS104の処理に相当するものである。このチェック対象リストデータ生成処理で生成されるものは、エッジデータ127と、挟み込み面データ129である。
 まず、チェック対象リスト生成部115は、3Dモデルデータ121を基に部品リストデータを生成する(S301)。ここで、部品リストデータとは、部品識別番号がリスト形式で格納されているものである。
 次に、チェック対象リスト生成部115は、予め作成されている除外部品リストデータ123を参照して、除外部品リストデータ123に格納されている部品(除外部品)のデータを部品リストデータから削除する(S302)。このようにすることで、以下の処理を効率的に行うことができる。
 ステップS302において、チェック対象リスト生成部115は、例えば、部品リストデータにおける部品識別番号に対応する部品モデルを検索し、この部品モデルの属性情報における部品種類情報を、3Dモデルデータ121で検索する。そしてチェック対象リスト生成部115は、処理対象となっている部品モデルの部品種類情報が、除外部品リストデータ123に格納されているものであれば、処理対象となっている部品識別番号を部品リストデータから除外する。
 その後、チェック対象リスト生成部115及びエッジ検出部116は、ステップS311~S313を行うことでエッジの検出を行う。
 ここで、図12はエッジの例を示す図である。
 エッジとは、図12の符号501のように、部品において鋭角となっている箇所であり、配線を傷つけるおそれのある箇所のことである。
 図11に説明を戻す。
 次に、エッジ検出部116はエッジ検出処理を行う(S311)。
(エッジ検出処理:S311)
 図13は、本実施形態に係るエッジ検出処理の手順を示すフローチャートである。
 まず、エッジ検出部116は、部品リストデータからレコード(部品識別番号)を1つ選択し、この部品モデルにおけるポリゴン(以降、第1ポリゴンと称する)を1つ取得する(S901)。
 次に、エッジ検出部116は、第1ポリゴンにおけるすべての辺に関する情報である辺情報をエッジ中間データ126に格納する(S902)。
 ステップS902の処理を、図14(a)を参照して説明する。図14(a)は第1ポリゴンに関する情報を示す図である。
 エッジ検出部116は第1ポリゴンPL11における3つの辺a1-1~a1-3を辺情報として、処理対象となっている部品モデルの部品識別番号及び処理対象となっているポリゴン情報とともにエッジ中間データ126の辺情報に格納する。なお、本実施形態では、図14に示すようにポリゴン情報を「PL11」、「PL12」・・・等と便宜的に記載するが、実際にはポリゴンの各頂点の座標及びポリゴンの法線ベクトルの成分である。
 図13の説明に戻り、エッジ検出部116は、ステップS901で取得した部品モデルにおける第1ポリゴンに隣接するポリゴン(第2ポリゴン)を取得する(S903)。ここで、隣接するポリゴンとは、共通の辺又は頂点を有するポリゴンのことである。
 次に、エッジ検出部116は、取得した第2ポリゴンにおける辺情報を1つ取得する(S904)。
 そして、エッジ検出部116は、取得した第2ポリゴンの辺が、第1ポリゴンの辺と共通の辺であるか否かを判定する(S905)。
 ステップS905の結果、共通の辺である場合(S905→Yes)、エッジ検出部116はステップS907へ処理を進める。
 ステップS905の結果、共通の辺ではない場合(S905→No)、エッジ検出部116は、処理対象となっている第2ポリゴンの辺の情報(辺情報)をエッジ中間データ126に格納する(S906)。
 ステップS903~S906の処理を、図14(b)を参照して説明する。図14(b)は第1ポリゴンと、第2ポリゴンとに関する情報を示す図である。
 エッジ検出部116は、第2ポリゴンPL21の辺a2-1,a2-2の情報を辺情報としてエッジ中間データ126に格納するが、辺a2-3は図14(a)に示す第1ポリゴンPL11の辺a1-3と共通であるので、辺a2-3の情報をエッジ中間データ126には格納しない。
 図13の説明に戻り、ステップS905で「Yes」が判定された場合、もしくは、ステップS906の後、エッジ検出部116は第2ポリゴンのすべての辺について、ステップS904~S906の処理を終了したか否かを判定する(S907)。
 ステップS907の結果、処理を終了していない場合(S907→No)、エッジ検出部116はステップS904へ処理を戻す。
 ステップS907の結果、処理を終了している場合(S907→Yes)、図14(c)に示すように、エッジ検出部116は、第1ポリゴンPL11が作る面の法線ベクトルVE11と、第2ポリゴンPL21が作る面の法線ベクトルVE21とを取得する(S908)。ポリゴンは、3Dモデル中における各頂点の座標と、ポリゴンの法線ベクトルの成分との情報によって管理されているため、ステップS908では、エッジ検出部116が処理対象となっているポリゴンの法線ベクトルの成分を取得するだけでよい。
 そして、エッジ検出部116は、図14(c)における法線ベクトルVE11,VE21のなす角が、所定角度より大きいか否かを判定する(S909)。ここで、所定角度とは、エッジが配線を傷つけるような角度、例えば、90°である。
 ステップS909の結果、所定角度以下である場合(S909→No)、エッジ検出部116は、ステップS911へ処理を進める。
 ステップS909の結果、所定角度より大きい場合(S909→Yes)、エッジ検出部116は、エッジ中間データ126にエッジフラグをたてる(S910)。
 ステップS910の処理を、図14(c)を参照して説明する。図14(c)はエッジに関する情報を示す図である。
 図14(c)の紙面右側の表に示すように法線ベクトルVE11,VE21のなす角が所定角度より大きい場合、エッジ中間データ126における第1ポリゴンPL11及び第2ポリゴンPL21の共通辺a1-3にエッジフラグをたてる。第1ポリゴンPL11及び第2ポリゴンPL21の共通辺a1-3は、言い換えれば、エッジそのものである。
 図13の説明に戻る。
 ステップS909で「No」と判定されるか、もしくは、ステップS910の後、エッジ検出部116は、すべてのポリゴンの対について、ステップS901~S910の処理を終了したか否かを判定する(S911)。
 ステップS911の結果、終了していない場合(S911→No)、エッジ検出部116は、ステップS901へ処理を戻す。
 ステップS911の結果、終了している場合(S911→Yes)、処理部100は図11のステップS312にリターンする。
 図11に説明を戻す。
 ステップS311の後、チェック対象リスト生成部115は、エッジ中間データ126の内容をエッジデータ127に格納し(S312)、すべての部品モデルについてステップS311~S312の処理を終了したか否かを判定する(S313)。
 ステップS313の結果、すべての部品モデルについて終了していない場合(S313→No)、チェック対象リスト生成部115はステップS311へ処理を戻す。
 ステップS313の結果、すべての部品モデルについて終了している場合(S313→Yes)、チェック対象リスト生成部115は、ステップS321へ処理を進める
 図15は、本実施形態に係るエッジデータの例を示す図である。
 エッジデータ127は、エッジ識別番号、部品識別番号及びエッジ情報を有している。
 エッジ識別番号は、チェック対象リスト生成部115によって付与される番号であり、エッジ毎に付される番号である。なお、同じ部品モデルであり、ポリゴン間で連続しているエッジであれば同じエッジ識別番号が付される。
 部品識別番号には、対象となる部品モデルの部品識別番号が格納される。
 そして、エッジ情報には、エッジが検出されたポリゴン情報と、辺情報とが格納される。ここで、格納されるポリゴン情報と、辺情報とは、図14(c)に示すエッジ中間データ126において、エッジフラグがたてられたポリゴン情報と、辺情報である。
 図11に説明を戻す。
 次に、チェック対象リスト生成部115は、ステップS321~S328の処理を行うことで、挟み込み面の検出を行う。
 ここで、図16は挟み込み面の例を示す図である。
 挟み込み面とは、図16の符号511に示すように、2つの部品における面が向かい合って(対向して)接続している箇所、例えば、部品間のパッキングや、接合が行われる際に、配線が挟み込まれるおそれのある面である。なお、図16では、面同士が接触している。
 図11の処理に説明を戻す。
 まず、チェック対象リスト生成部115は、部品リストデータからレコード(部品データ)を2つ取得する(S321)。
 次に、チェック対象リスト生成部115は、取得した2つのレコードにおける部品モデルからポリゴンをそれぞれ1つずつ取得する(S322)。
 このとき、チェック対象リスト生成部115が、取得されたポリゴンが互いに対向している面であるか否かを判定することも可能である。つまり、チェック対象リスト生成部115は、取得された2つのポリゴンが取得元の部品において、互いに向き合っている面を構成しているポリゴンか否かを、3Dモデルデータ121を参照して判定してもよい。そして、取得されたポリゴンが互いに対向している面を構成している場合、チェック対象リスト生成部115がステップS323以降の処理を行うことも可能である。
 次に、チェック対象リスト生成部115は、取得した2つのポリゴンのうち、一方のポリゴンをxy平面とし、他方のポリゴンを該xy平面上に射影する(S323)。
 そして、チェック対象リスト生成部115は、射影の結果、2つのポリゴンにおいて重複する箇所(重なっている箇所)があるか否かを判定する(S324)。
 ステップS324の結果、重複する箇所がない場合(S324→No)、チェック対象リスト生成部115は、ステップS327へ処理を進める。
 ステップS324の結果、重複している箇所がある場合(S324→Yes)、チェック対象リスト生成部115は、処理対象となっているポリゴンについて、3Dモデルデータ121を参照する。そして、チェック対象リスト生成部115は、重複しているポリゴン間の距離が誤差範囲内である箇所が存在するか否かを判定する(S325)。誤算範囲は、例えば、10-2mmである。
 ステップS323~S325の処理を、図17を参照して説明する。図17は本実施形態に係る挟み込み面検出処理の手順を示す図であり、図17(a)は2つのポリゴンが平行な状態で接している場合の上面図であり、図17(b)は2つのポリゴンが平行な状態で接している場合の側面図であり、図17(c)は2つのポリゴンのうち、一方のポリゴンが傾いた状態で他方のポリゴンに接している場合の上面図であり、図17(d)は2つのポリゴンのうち、一方のポリゴンが傾いた状態で他方のポリゴンに接している場合の側面図である。
 なお、ステップS323~S325の処理は、ポリゴンを対象として行われる処理であるが、図17では、見やすくするため、ポリゴンが直方体であるものとして説明する。
 まず、横方向から見たとき、ポリゴン601及びポリゴン602が、図17(a)に示すような関係である場合、ポリゴン601,602の高さ方向をz方向として、例えばポリゴン602の上面をxy平面とした場合、ポリゴン601をxy平面に射影したものが図17(b)である。
 ここで、射影したポリゴン601,602が重複している箇所は図17(a),(b)における面611である。図17(a)に示されるように、面611の全面において、ポリゴン601とポリゴン602との間の距離が誤差範囲Δz以内である。
 このような場合、チェック対象リスト生成部115は、面611の全面を挟み込み面と判定する。これは、ポリゴン601とポリゴン602との間の距離が誤差範囲Δz以内であると、配線が挟み込まれたとき、キズがついたり、切断されたりする等の不具合が生じるおそれがあるためである。
 また、横方向から見たとき、ポリゴン603及びポリゴン602が、図17(c)に示すような関係である場合、ポリゴン603,602の高さ方向をz方向として、例えばポリゴン602の上面をxy平面としたとき、ポリゴン603をxy平面に射影したものが図17(d)である。
 ここで、射影したポリゴン603,602が重複している箇所は、図17(d)に示すように面621(ドットで示している箇所)である。図17(c)に示されるように、ポリゴン603とポリゴン602との間の距離が誤差範囲Δz以内であるのは、面622(図17(d)において斜線で示している箇所)である。
 このような場合、チェック対象リスト生成部115は、面622において挟み込みが発生する可能性があると判定する。
 図11に説明を戻す。
 ステップS325の結果、誤差範囲内の箇所がない場合(S325→No)、チェック対象リスト生成部115はステップS327へ処理を進める。
 ステップS325の結果、誤差範囲内の箇所がある場合(S325→Yes)、チェック対象リスト生成部115は、処理対象となっている挟み込み面の情報(挟み込み面情報)を挟み込み面中間データ128に格納する(S326)。
 図18は、本実施形態に係る挟み込み面中間データの例を示す図である。
 挟み込み面中間データ128は、第1部品識別番号と、第1ポリゴン情報と、第2部品識別番号と、第2ポリゴン情報とを有する。
 第1部品識別番号及び第2部品識別番号は、ステップS321で取得されたレコードにおける2つの部品識別番号である。
 第1ポリゴン情報及び第2ポリゴン情報は、ステップS322~S325で処理対象となっているポリゴンの情報である。
 なお、ここでは、ポリゴンにおいて、図17のように一部のみが重複していても、そのポリゴン同士は全面が挟み込み面として処理される。このように、一部のみが重複している場合、チェック対象リスト生成部115は、重複している範囲の座標を挟み込み面中間データ128に記憶するようにしてもよい。
 図11に説明を戻す。
 続いて、チェック対象リスト生成部115は、処理対象となっている2つの部品モデルにおけるすべてのポリゴンの対についてステップS322~S326の処理を終了したか否かを判定する(S327)。なお、ステップS327において、チェック対象リスト生成部115は、隣接しているポリゴンの対のみについて判定してもよい。
 ステップS327の結果、すべてのポリゴンの対について終了していない場合(S327→No)、チェック対象リスト生成部115はステップS322へ処理を戻す。
 ステップS327の結果、すべてのポリゴンの対について終了している場合(S327→Yes)、チェック対象リスト生成部115は、挟み込み面データ129に挟み込み面中間データ128の内容を格納する(S328)。
 その後、チェック対象リスト生成部115は、部品リストデータにおける部品モデルのすべての対について挟み込み判定処理を終了したか否かを判定する(S329)。なお、ステップS327において、チェック対象リスト生成部115は、隣接している部品モデルの対のみについて判定してもよい。
 ステップS329の結果、すべての対について終了していない場合(S329→No)、チェック対象リスト生成部115は、ステップS321へ処理を戻す。
 ステップS329の結果、すべての対について終了している場合(S329→Yes)、処理部100は図6のステップS105の処理へリターンする。
 図19は、本実施形態に係る挟み込み面データの例を示す図である。
 挟み込み面データ129は、挟み込み面識別番号と、第1部品識別番号と、第2部品識別番号と、ポリゴン組情報とを有する。
 挟み込み面識別番号は、チェック対象リスト生成部115によって付与される番号であり、挟み込み面毎に付される番号である。なお、同じ部品であり、ポリゴン間で連続している挟み込み面であれば同じ挟み込み面識別番号が付される。
 第1部品識別番号及び第2部品識別番号は、チェック対象リスト生成部115によって、挟み込みが生じる可能性があると判定された2つの部品モデルの部品識別番号である。
 ポリゴン組情報は、チェック対象リスト生成部115によって挟み込み面を構成していると判定されたポリゴンの組を示す情報である。ポリゴンの一部のみが重複している場合、重複面の座標がポリゴン組情報に加えられてもよい。
(チェックペアリストデータ生成処理:S105)
 図20は、本実施形態に係るチェックペアリストデータ生成処理の手順を示すフローチャートである。なお、図20に示されるチェックペアリストデータ生成処理は図6のステップS105の処理に相当するものである。
 まず、チェックペアリスト生成部117が、配線モデルとエッジモデルとのすべての組み合わせをチェックペアリストデータ130に追加する(S401)。ここで、エッジモデルとは、エッジデータ127(図15)に格納されている情報に該当するものである。ステップS401において、チェックペアリスト生成部117は、配線モデルの識別番号(配線識別番号)を、チェックペアリストデータ130の配線識別番号に格納し、エッジモデルのエッジ識別番号をチェックペアリストデータ130のチェック対象識別番号に格納する(図21参照)。
 次に、チェックペアリスト生成部117が、配線モデルと挟み込み面モデルとのすべての組み合わせをチェックペアリストデータ130に追加する(S402)。ここで、挟み込み面モデルとは、挟み込み面データ129(図19)に格納されている情報に該当するものである。ステップS402において、チェックペアリスト生成部117は、配線モデルの識別番号(配線識別番号)を、チェックペアリストデータ130の配線識別番号に格納し、挟み込み面モデルの挟み込み面識別番号をチェックペアリストデータ130のチェック対象識別番号に格納する(図21参照)。
 図21は、本実施形態に係るチェックペアリストデータの例を示す図である。図21(a)は、図20で示す処理(チェックペアリストデータ生成処理が終了した後)が終了した後のチェックペアリストデータ130であり、図21(b)は、図22で示すステップS508の処理が終了した後(遮りチェックが開始される直前)のチェックペアリストデータ130である。
 図21に示すように、チェックペアリストデータ130では、配線識別番号、チェック対象識別番号、分割単位識別番号、配線側ポリゴン識別番号、配線側座標、チェック対象側ポリゴン識別番号及びチェック対象側座標が対応付けられている。以下、分割単位識別番号、配線側ポリゴン識別番号、配線側座標、チェック対象側ポリゴン識別番号及びチェック対象側座標の情報を、まとめて最短距離情報と適宜称する。
 ここで、チェック対象識別番号は、エッジデータ127(図15)におけるエッジ識別番号や、挟み込み面データ129(図19)における挟み込み面識別番号である。
 最短距離情報(分割単位識別番号、配線側ポリゴン識別番号、配線側座標、チェック対象側ポリゴン識別番号及びチェック対象側座標)は、後記する最短距離点の特定後に格納される情報であり、それぞれの情報については後記して説明する。
 なお、図21(a)に示すように、最短距離情報は、ステップS402の段階では空欄となっている。
(クリアランスチェック処理)
 図22及び図23は、本実施形態に係るクリアランスチェック処理の手順を示すフローチャートである。なお、図22及び図23に示されるクリアランスチェック処理は図6のステップS106の処理に相当するものである。
 まず、クリアランスチェック部118は、チェックペアリストデータ130(図21)から未処理のレコードを1つ取得する(S501)。
 そして、クリアランスチェック部118は、取得したレコードに含まれる配線識別番号に対応する配線モデルの可動範囲を包含する直方体(以降、チェック直方体と称する)と、チェック対象モデルとを包含するチェック直方体を算出する(S502)。ここで、チェック対象モデルとは、取得したレコードに含まれるチェック対象識別番号に対応するモデルである。
 図24は、本実施形態に係るチェック直方体の例を示す図である。
 図24のチェック直方体701~703に示すように、チェック直方体とは各部品モデル711,712や、配線モデル713を覆う直方体である。なお、チェック直方体711~713が、各部品モデル711,712や、配線モデル713に対して、どの程度の余裕を持たせられるかは、ユーザによって設定可能である。このような設定は、設定データ122に格納されている。
 図22の説明に戻る。
 ステップS502の後、クリアランスチェック部118は、ステップS502で算出したチェック直方体同士が干渉するか否かを判定する(S503)。ここで、チェック直方体同士の干渉の有無をチェックするのは、互いに離れている配線モデルとチェック対象モデル(エッジもしくは挟み込み面を有する部品モデル)とを、後記するクリアランスチェックの対象から外すためである。これにより、処理効率を向上させることができる。
 ステップS503の結果、可動範囲のチェック直方体と、チェック対象モデルのチェック直方体とが干渉しない場合(S503→No)、クリアランスチェック部118はチェックペアリストデータ130から、処理対象となっているレコードを削除し(S507)、ステップS508へ処理を進める。
 ステップS503の結果、可動範囲のチェック直方体と、チェック対象モデルのチェック直方体とで干渉している箇所が存在する場合(S503→Yes)、クリアランスチェック部118は、配線モデルを所定の長さで分割する(S504)。配線モデルにおいて、分割された個々のモデルを分割単位と称する。そして、クリアランスチェック部118は、干渉チェックデータ130において、処理対象となっているレコードを、図21(b)の符号801~803に示すように生成された分割単位数だけ追加し、追加した1つ1つのレコードに分割単位の識別番号(分割単位識別番号)を格納する。
 そして、クリアランスチェック部118は、処理対象となっている分割単位と、チェック対象モデルとで、最短距離となる点(最短距離点)を特定する(S505)。最短距離点の特定は公知の技術であるので、ここでは説明を省略する。なお、ここで、特定される情報は、配線側ポリゴン、配線側座標、チェック対象側ポリゴン、チェック対象側座標である。
 次に、クリアランスチェック部118は、処理結果である最短距離情報をチェックペアリストデータ130に格納する(S506)。
 この結果、図21(b)に示すように、チェックペアリストデータ130における最短距離情報に情報が格納される。
 図25は、本実施形態に係る最短距離点を説明するための図である。
 図25に示されるように、配線モデル1301は、複数の分割単位1311に分割されている。そして、分割単位1311のそれぞれから部品モデル1321,1322へ最短距離を示す線1331が示されている。それぞれの線1331の端点のうち、配線モデル1301側の座標が、チェックペアリストデータ130における配線側座標であり、この配線側座標が属するポリゴンが配線側ポリゴンである。同様に、それぞれの線1331の端点のうち、チェック対象(部品モデル1321,1322)側の座標が、チェックペアリストデータ130におけるチェック対象側座標であり、このチェック対象側座標が属するポリゴンがチェック対象側ポリゴンである。
 図22に説明を戻す。
 ステップS503で「No」と判定された後、もしくは、ステップS506の後、クリアランスチェック部118は、チェックペアリストデータ130のすべてのレコードについて、ステップS501~S507の処理を終了したか否かを判定する(S508)。
 ステップS508の結果、すべてのレコードについて処理を終了していない場合(S508→No)、クリアランスチェック部118は、ステップS501へ処理を戻す。
 ステップS508の結果、すべてのレコードについて処理を終了している場合(S508→Yes)、図23のステップS521へ処理を進める。
(遮りチェック)
 ステップS508で「Yes」が判定された後、クリアランスチェック部118は、チェックペアリストデータ130からレコードを1つ取得する(図23のS521)。
 そして、クリアランスチェック部118は、取得したレコードから最短距離情報(分割単位識別番号、配線側ポリゴン識別番号、配線側座標、チェック対象側ポリゴン識別番号及びチェック対象側座標)を取得する(S522)。
 次に、クリアランスチェック部118は、取得した最短距離情報における配線側座標及びチェック対象側座標を結ぶ線分を、3Dモデルデータ121上に描画する(S523)。
 そして、クリアランスチェック部118は、描画された線分と干渉するポリゴンが3Dモデルデータ121上にあるか否かを判定する(S524)。
 ステップS523及びステップS524の処理を、図26を参照して説明する。
 図26は、本実施形態に係る遮りチェック方法を示す図であり、図26(a)は描画された線分と干渉するポリゴンがない場合を示す図であり、図26(b)は描画された線分と干渉するポリゴンがある場合を示す図である。
 図26(a)及び図26(b)において、線分901がステップS523で描画される線分である。
 そして、図26(a)では、線分901と干渉する部品モデル(ポリゴン)がない。この場合、クリアランスチェック部118は、ステップS524で「No」と判定する。
 また、図26(b)では、部品モデル911(部品モデル911のポリゴン)が線分901と干渉している。この場合、クリアランスチェック部118は、ステップS524で「Yes」と判定する。
 図23の説明に戻る。
 ステップS524の結果、干渉するポリゴンがある場合(S524→Yes)、クリアランスチェック部118は、チェックペアリストデータ130から処理対象となっているレコードを削除して(S551)、ステップS561へ処理を進める。これは、配線がエッジや、挟み込み面と干渉するおそれがあるものの、配線と、エッジ又は挟み込み面との間に部品があるため、干渉のおそれがないものと判定されることを意味している。
 ステップS524の結果、干渉するポリゴンがない場合(S524→No)、クリアランスチェック部118は、ステップS521で取得した最短距離情報の2つの点のうち、チェック対象モデル側に属する点(つまり、チェック対象側座標が示す点)を取得する(S531)。つまり、実際にステップS531で取得される情報はチェック対象側座標である。
 次に、クリアランスチェック部118は、留め具モデル及び除外部品リストデータに格納されている部品モデルについて、3Dモデルデータ121上にチェック直方体を生成する(S532)。
 そして、クリアランスチェック部118は、ステップS531で取得した点が、ステップS532で生成されたチェック直方体に含まれるか否かを判定する(S533)。
 ステップS533の結果、チェック直方体に含まれる場合(S533→Yes)、クリアランスチェック部118は、チェックペアリストデータ130から処理対象となっているレコードを削除して(S551)、ステップS561へ処理を進める。これは、エッジや、挟み込み面が留め具や、除外部品に近い場合、配線と干渉する可能性が低いことを意味している。
 ステップS533の結果、チェック直方体に含まれない場合(S533→No)、クリアランスチェック部118は、ステップS521で取得したレコードに格納されている最短距離情報の2つの点のうち、チェック対象モデル側に属する点(つまり、チェック対象側座標が示す点)を取得する(S541)。つまり、実際にステップS541で取得される情報はチェック対象側座標である。
 続いて、クリアランスチェック部118は、可動範囲リストデータ125(図10)から、ステップS521で取得したレコードに含まれる配線モデルの可動範囲情報を取得する(S542)。
 次に、クリアランスチェック部118は、ステップS541で取得した点が、ステップS542における可動範囲の内側に含まれるか否かを判定する(S543)。
 ステップS543の結果、含まれない場合(S543→No)、クリアランスチェック部118は、チェックペアリストデータ130から処理対象となっているレコードを削除する(S551)。
 ステップS543の結果、含まれる場合(S543→Yes)、クリアランスチェック部118は、チェックペアリストデータ130におけるすべてのレコードについて、ステップS521~S524,S531~S533,S541~S543,S551の処理を終了したか否かを判定する(S561)。
 ステップS561の結果、すべてのレコードについて処理を終了していない場合(S561→No)、クリアランスチェック部118はステップS521へ処理を戻す。
 ステップS561の結果、すべてのレコードについて処理を終了している場合(S561→Yes)、チェックペアリストデータ130の内容を干渉データ131にコピーし(S562)、処理部100は図6のステップS107に処理をリターンする。
 干渉データ131の内容は、図21のチェックペアリストデータ130から、干渉が生じていないと判定されたレコードが削除されたものであるので、ここでは図示及び説明を省略する。
(干渉チェック結果画面)
 図27は、本実施形態に係る干渉チェック結果画面の例を示す図である。
 干渉結果チェック結果画面としての3Dモデル表示画面300aは、図4に示される3Dモデル表示画面300と同様の構成を有しているので、3Dモデル表示画面300と同様の構成については、符号及び説明を省略する。
 3Dモデル表示画面300aの3Dモデル表示部301において、配線モデル322の可動範囲が回転楕円体1001として表示されている。例えば、ユーザがマウス(入力装置25)を介して配線モデル322をクリック、又は右クリックした後、「可動範囲を表示」を選択すると、回転楕円体1001が表示される。回転楕円体1001は、表示処理部212が可動範囲リストデータ125を参照することによって表示される。
 さらに、各部品モデルにおいて、配線モデル322との干渉が発生する可能性のある箇所(エッジ)が符号1011として強調表示されている。この強調表示は、表示処理部212が干渉データ131を参照することによって表示される。
 この他に、表示処理部212が干渉データ131の最短距離情報を参照することで、最短距離線が表示されてもよい。
 図28は、本実施形態に係る干渉チェック結果画面の別の例を示す図である。
 干渉チェック結果画面1100は、例えば、図27の3Dモデル表示画面300aにおいて、右クリックから「部品情報表示」等を選択入力すると表示されるものである。
 干渉チェック結果画面1100には、符号1101に示すように、配線モデルの部品名称(3Dモデルデータ121において、配線モデルの属性情報として格納されている)と、符号1102に示すようにその配線モデルにおいて生じうる干渉の形態(エッジ、挟み込み)とが表示されている。
 本実施形態では、干渉データ131に配線識別番号、チェック対象識別番号、最短距離情報が格納されるものとしたが、この他にチェック対象モデルにおいて、可動範囲(回転楕円体)に含まれる領域に関する情報が格納されてもよい。あるいは、クライアント端末2の表示処理部212が干渉チェック結果画面を表示する際に、チェック対象モデルのうち、可動範囲に含まれる部分のみを強調表示するようにしてもよい。
(まとめ)
 図29のように、配線が十分に長い場合には、配線1201が端点1211,1212を結ぶ延長線上にかかってしまうおそれがある。特許文献1,2に記載の技術では、ワイヤハーネス(配線)を固定している拘束具(端点)を結ぶ直線を底辺とし、節点両側の線分長を2辺とする三角形の頂点に各節点が位置設定されることで、ワイヤハーネス(配線)の可動範囲が算出されている。しかし、この手法では、図29に示すようなケースに対して対応することができない。
 これに対し、本実施形態によれば、配線モデルにおける2つの固定点を焦点とし、一方の焦点から所定の点までの距離と、他方の焦点から前記所定の点までの距離との合計が、配線モデルの長さとなるような所定の点の集合(回転楕円体)を配線の可動範囲としている。このようにすることで、本実施形態に係る干渉チェックシステムZは、図29に示すようなケースにも対応することができる。
 また、本実施形態によれば、算出した配線の可動範囲を用いて、他の部品モデルと干渉するか否かをチェックすることで、人手を介することなく、算出した配線の可動範囲を用いた配線と部品との干渉チェックが可能となる。
 さらに、本実施形態に係る干渉チェックシステムZは、第1の面と、第2の面との角度が所定の角度以下であるエッジと、可動範囲とが干渉するか否かを判定する。このようにすることで、配線を切断又は傷つけるおそれのあるエッジと、配線との干渉チェックを容易に行うことができる。
 また、本実施形態に係る干渉チェックシステムZは、第1の部品モデルを構成している第1の面と、第1の部品モデルとは異なる第2の部品モデルを構成している第2の面との間隔が所定の値以下である挟み込み面において、挟み込み面と、可動範囲とが干渉するか否かを判定することで、設定された可動範囲が、第1の部品モデルと干渉するか否かを判定する。このようにすることにより、本実施形態に係る干渉チェックシステムZは、配線を挟み込むことで、配線を傷つけたり、切断したりするおそれのある挟み込み面と、配線との干渉チェックを容易に行うことができる。
 そして、本実施形態に係る干渉チェックシステムZは、配線モデルと、第1の部品モデルとの間に、第1の部品モデルとは異なる第2の部品モデルが存在するか否かを判定し、存在する場合、設定された可動範囲が、配線モデルとは異なる第1の部品モデルと干渉するか否かの判定を行わない。これにより、配線と、干渉チェック対象になっている部品との間に、他の部品がある場合には、配線と、干渉チェックの対象になっている部品とは干渉のおそれがないと判定される。このようにすることで、より実際の配線状態に近い干渉チェックができる。
 1   サーバ
 2   クライアント端末
 100 処理部(サーバ)
 112 読込部
 113 可動範囲リスト生成部(可動範囲設定部)
 114 可動範囲算出部
 115 チェック対象リスト生成部
 116 エッジ検出部
 117 チェックペアリスト生成部
 118 クリアランスチェック部
 121 3Dモデルデータ
 122 設定データ
 123 除外部品リストデータ
 124 配線リストデータ
 125 可動範囲リストデータ
 126 エッジ中間データ
 127 エッジデータ
 128 挟み込み面中間データ
 129 挟み込み面データ
 130 チェックペアリストデータ
 131 干渉データ
 200 処理部(クライアント端末)
 212 表示処理部
 Z   干渉チェックシステム

Claims (5)

  1.  3次元モデルデータ中における配線の3次元形状モデルである配線モデルにおいて、前記配線モデルにおける2つの固定点を焦点とし、一方の焦点から所定の点までの距離と、他方の焦点から前記所定の点までの距離との合計が、前記配線モデルの長さとなるような前記所定の点の集合を生成する可動範囲算出部と、
     該所定の点の集合の内側を前記配線の可動範囲として設定する可動範囲設定部と、
     設定された前記可動範囲を表示部に表示させる表示処理部と、
     を有することを特徴とする干渉チェックシステム。
  2.  設定された前記可動範囲が、前記配線モデルとは異なる第1の部品モデルと干渉するか否かを判定し、
     前記判定の結果、干渉する場合、該干渉に関する情報を記憶部に格納するクリアランスチェック部と、
     前記干渉に関する情報を表示部に表示する表示処理部と、
     を有することを特徴とする請求項1に記載の干渉チェックシステム。
  3.  前記クリアランスチェック部は、
     前記3次元モデルデータ中において、前記第1の部品モデルを構成している第1の面と、第2の面との角度が所定の角度以下であるエッジを検出し、検出した前記エッジと、前記可動範囲とが干渉するか否かを判定することで、設定された前記可動範囲が、前記第1の部品モデルと干渉するか否かを判定する
     ことを特徴とする請求項2に記載の干渉チェックシステム。
  4.  前記クリアランスチェック部は、
     前記3次元モデルデータ中において、前記第1の部品モデルを構成している第1の面と、前記第1の部品モデルとは異なる第2の部品モデルを構成している第2の面との間隔が所定の値以下である挟み込み面において、前記挟み込み面と、前記可動範囲とが干渉するか否かを判定することで、設定された前記可動範囲が、前記第1の部品モデルと干渉するか否かを判定する
     ことを特徴とする請求項2に記載の干渉チェックシステム。
  5.  前記クリアランスチェック部は、
     前記配線モデルと、前記第1の部品モデルとの間に、前記第1の部品モデルとは異なる第2の部品モデルが存在するか否かを判定し、
     存在する場合、設定された前記可動範囲が、前記配線モデルとは異なる第1の部品モデルと干渉するか否かの判定を行わない
     ことを特徴とする請求項2から請求項4のいずれか一項に記載の干渉チェックシステム。
PCT/JP2015/065238 2014-05-28 2015-05-27 干渉チェックシステム WO2015182654A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/314,093 US10296697B2 (en) 2014-05-28 2015-05-27 Interference check system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014-109947 2014-05-28
JP2014109947A JP6360356B2 (ja) 2014-05-28 2014-05-28 干渉チェックシステム

Publications (1)

Publication Number Publication Date
WO2015182654A1 true WO2015182654A1 (ja) 2015-12-03

Family

ID=54698977

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/065238 WO2015182654A1 (ja) 2014-05-28 2015-05-27 干渉チェックシステム

Country Status (3)

Country Link
US (1) US10296697B2 (ja)
JP (1) JP6360356B2 (ja)
WO (1) WO2015182654A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190243461A1 (en) * 2016-07-26 2019-08-08 Mitsubishi Electric Corporation Cable movable region display device, cable movable region display method, and cable movable region display program

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6753283B2 (ja) * 2016-11-28 2020-09-09 富士通株式会社 ケーブル敷設方法及びケーブル敷設装置
JP6687582B2 (ja) * 2017-11-30 2020-04-22 ファナック株式会社 情報処理装置
JP7091098B2 (ja) * 2018-03-15 2022-06-27 キヤノンメディカルシステムズ株式会社 放射線治療支援装置及び放射線治療支援プログラム
CN110052825B (zh) * 2019-04-25 2020-12-29 哈尔滨工业大学 一种异形换热管组装成为管束的方法、系统及装置
CN114626164B (zh) * 2022-03-28 2024-04-16 南京维拓科技股份有限公司 一种自动审查三维图纸中粘贴物超出粘贴面的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006059245A (ja) * 2004-08-23 2006-03-02 Toyota Motor Corp 線条材の可動範囲算出装置、方法およびプログラム
JP2006134297A (ja) * 2004-10-04 2006-05-25 Sharp Corp 線状部品干渉検証装置及びその検証方法と線状部品干渉検証機能を備えた線状部品設計装置及びその設計方法
JP2011165096A (ja) * 2010-02-12 2011-08-25 Fujitsu Ltd 干渉判定装置、干渉判定方法および干渉判定プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4266783B2 (ja) 2003-11-14 2009-05-20 関東自動車工業株式会社 柔軟物の変形解析装置
JP4641033B2 (ja) * 2007-09-04 2011-03-02 関東自動車工業株式会社 ワイヤハーネスの可動範囲解析装置
JP4928528B2 (ja) 2008-11-11 2012-05-09 関東自動車工業株式会社 ワイヤーハーネスの可動経路解析システム
JP5644508B2 (ja) * 2011-01-04 2014-12-24 富士通株式会社 ハーネス設計支援プログラム、ハーネス設計支援方法及びハーネス設計支援装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006059245A (ja) * 2004-08-23 2006-03-02 Toyota Motor Corp 線条材の可動範囲算出装置、方法およびプログラム
JP2006134297A (ja) * 2004-10-04 2006-05-25 Sharp Corp 線状部品干渉検証装置及びその検証方法と線状部品干渉検証機能を備えた線状部品設計装置及びその設計方法
JP2011165096A (ja) * 2010-02-12 2011-08-25 Fujitsu Ltd 干渉判定装置、干渉判定方法および干渉判定プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190243461A1 (en) * 2016-07-26 2019-08-08 Mitsubishi Electric Corporation Cable movable region display device, cable movable region display method, and cable movable region display program

Also Published As

Publication number Publication date
US10296697B2 (en) 2019-05-21
JP2015225504A (ja) 2015-12-14
US20170193149A1 (en) 2017-07-06
JP6360356B2 (ja) 2018-07-18

Similar Documents

Publication Publication Date Title
WO2015182654A1 (ja) 干渉チェックシステム
JP5830004B2 (ja) 3次元モデル生成装置、3次元モデル生成方法及び3次元モデル生成プログラム
JP2008234011A (ja) 設計ルール管理方法、設計ルール管理プログラム、ルール構築装置およびルールチェック装置
KR101774878B1 (ko) 수치지도 오류 검출 방법
CN107622530B (zh) 一种高效鲁棒的三角网切割方法
US20150347366A1 (en) Creation of associative 3d product documentation from drawing annotation
JP2017182302A (ja) 画像処理プログラム、画像処理装置、及び画像処理方法
US20180299869A1 (en) Modeling process device, modeling process system, and medium
US10318675B2 (en) Post-processing system for finite element analysis
US20170124223A1 (en) Modeling processing system, method of executing modeling processing, and non-transitory recording medium
JP2015111359A (ja) 設計プログラム、設計装置及び設計方法
JP2014215769A (ja) 図面生成装置、図面生成方法、及びプログラム
JP5890683B2 (ja) 情報処理装置およびその方法
JP6237002B2 (ja) モデル計測装置、モデル計測方法、及びプログラム
JP6127331B2 (ja) 配筋検証支援装置及びそのプログラム
JP2011034505A (ja) 設計支援装置、及び、設計支援方法
JP6282725B2 (ja) 画像データ編集装置および画像データ編集方法ならびに画像データ編集プログラム
JP2010152863A (ja) 境界節点抽出システム、境界節点抽出方法及びプログラム
JP4912756B2 (ja) ポリゴンデータ分割方法およびポリゴンデータ分割装置
JP6544965B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP4024571B2 (ja) 設計支援プログラム
JP2012038105A (ja) 情報処理装置、情報処理方法、およびプログラム
JP5152581B2 (ja) 画像データ処理装置及び方法、並びにプログラム及び記録媒体
JP2019109665A (ja) 情報処理装置、加工時間算出方法および加工時間算出プログラム
JP7285660B2 (ja) 寸法生成装置、寸法生成方法及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15800459

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15314093

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15800459

Country of ref document: EP

Kind code of ref document: A1