WO2024166352A1 - 作画支援プログラム、作画支援装置及び作画支援方法 - Google Patents

作画支援プログラム、作画支援装置及び作画支援方法 Download PDF

Info

Publication number
WO2024166352A1
WO2024166352A1 PCT/JP2023/004545 JP2023004545W WO2024166352A1 WO 2024166352 A1 WO2024166352 A1 WO 2024166352A1 JP 2023004545 W JP2023004545 W JP 2023004545W WO 2024166352 A1 WO2024166352 A1 WO 2024166352A1
Authority
WO
WIPO (PCT)
Prior art keywords
parent
parts
child relationship
setting
child
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/JP2023/004545
Other languages
English (en)
French (fr)
Inventor
佑司 鈴木
祐弥 的場
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2023535059A priority Critical patent/JP7415086B1/ja
Priority to PCT/JP2023/004545 priority patent/WO2024166352A1/ja
Priority to CN202380090022.9A priority patent/CN120435706A/zh
Priority to DE112023004522.4T priority patent/DE112023004522T5/de
Publication of WO2024166352A1 publication Critical patent/WO2024166352A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming

Definitions

  • This disclosure relates to a drawing support program, a drawing support device, and a drawing support method.
  • Patent Document 1 discloses a technique for setting parent-child relationships between shapes displayed on a screen in an application for creating GUI (Graphical User Interface) screens.
  • This disclosure has been made to solve the problems described above, and aims to provide a drawing support program etc. that can reduce the effort required to set up multiple parts.
  • the drawing support program comprises: an operation receiving means for receiving a selection operation for selecting a plurality of parts displayed on the screen; a selection order determination means for determining a selection order of the plurality of parts based on the selection operation received by the operation reception means and a positional relationship of the plurality of parts on the screen;
  • the selection unit functions as a parent-child relationship setting unit that sets a parent-child relationship between the plurality of parts, with the part selected earlier being a parent part and the part selected later being a child part.
  • the selection order of multiple parts displayed on the screen is determined based on the selection operation for selecting multiple parts and the positional relationship of the multiple parts on the screen, and a parent-child relationship is set for the multiple parts, with the part selected earlier being the parent part and the part selected later being the child part. Therefore, according to the present disclosure, it is possible to reduce the effort required to set multiple parts.
  • FIG. 1 is a block diagram showing a configuration of a drawing support device according to a first embodiment
  • FIG. 1 is a diagram showing an example of a plurality of parts displayed in the drawing support device according to the first embodiment
  • FIG. 1 is a diagram showing a first example of a selection operation for drawing a linear trajectory input to the drawing support device according to the first embodiment, and a parent-child relationship set by the selection operation
  • FIG. 13 is a diagram showing a second example of a selection operation for drawing a linear trajectory input to the drawing support device according to the first embodiment, and a parent-child relationship set by the selection operation
  • FIG. 1 is a block diagram showing a configuration of a drawing support device according to a first embodiment
  • FIG. 1 is a diagram showing an example of a plurality of parts displayed in the drawing support device according to the first embodiment
  • FIG. 1 is a diagram showing a first example of a selection operation for drawing a linear trajectory input to the drawing support device according to the first embodiment, and a parent-child relationship set by
  • FIG. 1 shows a first example of a selection operation for drawing a rectangular area input to the drawing support device according to the first embodiment, and a parent-child relationship set by the selection operation
  • FIG. 13 shows a second example of a selection operation for drawing a rectangular area input to the drawing support device according to the first embodiment, and a parent-child relationship set by the selection operation
  • FIG. 13 is a diagram showing an example of a parent-child relationship that is set by a selection operation that draws a linear trajectory in a case where the shapes of a plurality of parts displayed on the drawing support device according to the first embodiment are other than rectangular
  • FIG. 1 is a diagram showing an example of selection order information generated in the drawing support device according to the first embodiment
  • FIG. 1 is a diagram showing an example of parent-child relationship information generated in the drawing support device according to the first embodiment
  • FIG. 13 is a diagram showing an example in which settings are applied to a plurality of parts for which a parent-child relationship is set in the drawing support device according to the first embodiment
  • 1 is a flowchart showing a flow of a setting application process executed by the drawing support device according to the first embodiment
  • FIG. 13 is a diagram showing an example of a parent-child relationship set in the drawing support device according to the second embodiment
  • FIG. 13 is a diagram showing an example of changing an edge for which a parent-child relationship is set in the drawing support device according to the third embodiment
  • FIG. 13 is a diagram showing an example of changing a part for which a parent-child relationship is set in the drawing support device according to the fourth embodiment;
  • FIG. 13 is a diagram showing an example of changing a part for which a parent-child relationship is set in the drawing support device according to the fifth embodiment;
  • FIG. 23 is a diagram showing an example in which a parent-child relationship set between parts is reversed in the drawing support device according to the sixth embodiment;
  • FIG. 23 is a diagram showing an example of parent-child relationship information generated in the drawing support device according to the sixth embodiment;
  • 13 is a flowchart showing the flow of a setting application process executed by the drawing support device according to the sixth embodiment.
  • (Embodiment 1) 1 shows a configuration of a drawing support device 10 according to embodiment 1.
  • the drawing support device 10 is a device in which drawing software is installed, and has a function of supporting a user's operations related to drawing.
  • the drawing software is screen design software for an HMI (Human Machine Interface) that is used to design the appearance and internal behavior of the screen in the HMI.
  • the drawing software is GUI application software that has the function of aligning and editing multiple parts arranged on the screen.
  • the drawing software is software for drawing the display screen that is displayed on a programmable display device that displays the status of devices such as a programmable logic controller (PLC) or a sensor and accepts operations for the device.
  • PLC programmable logic controller
  • the drawing support device 10 is a terminal device operated by a user.
  • the drawing support device 10 may be any device, such as a personal computer, a tablet terminal, or a smartphone, as long as it is a terminal device that can be operated by a user.
  • the drawing support device 10 includes a control unit 11, a storage unit 12, an operation unit 13, a display unit 14, and a communication unit 15.
  • the control unit 11 is equipped with a CPU (Central Processing Unit).
  • the CPU is also called a central processing unit, central arithmetic unit, processor, microprocessor, microcomputer, etc., and functions as a processing unit that executes processes and calculations related to the control of the drawing support device 10.
  • the CPU reads and operates the programs and data stored in the memory unit 12, and provides overall control of the drawing support device 10.
  • the storage unit 12 includes a ROM (Read Only Memory), a RAM (Random Access Memory), a flash memory, etc.
  • the storage unit 12 stores programs and data used by the control unit 11 to perform various processes.
  • the storage unit 12 also stores data generated or acquired by the control unit 11 performing various processes.
  • the storage unit 12 stores selection order information 121 and parent-child relationship information 122.
  • the operation unit 13 is equipped with input devices such as a touch panel, a touch pad, a keyboard, a mouse, and physical buttons, and accepts operational input from the user. By operating the operation unit 13, the user can input various instructions to the drawing support device 10.
  • the display unit 14 includes a display device such as a liquid crystal panel or an organic EL (Electro-Luminescence) panel.
  • the display unit 14 is driven by a display drive circuit (not shown) to display various images.
  • the communication unit 15 has a communication interface for communicating with devices external to the drawing support device 10.
  • the communication unit 15 communicates with devices external to the drawing support device 10 in accordance with well-known communication standards such as LAN (Local Area Network) and USB (Universal Serial Bus).
  • LAN Local Area Network
  • USB Universal Serial Bus
  • the control unit 11 functionally comprises an operation reception unit 111, which is an example of an operation reception means, a selection order determination unit 112, which is an example of a selection order determination means, a parent-child relationship setting unit 113, which is an example of a parent-child relationship setting means, and a setting application unit 114, which is an example of a setting application means.
  • Each of these functions is realized by software, firmware, or a combination of software and firmware.
  • the software and firmware are written as programs and stored in the memory unit 12.
  • the control unit 11 then executes the programs stored in the memory unit 12 to realize each function.
  • the operation reception unit 111 receives a selection operation for selecting a plurality of parts displayed on the screen.
  • a part is an element included as an image on the display screen. More specifically, a part corresponds to a GUI component, a figure, etc. used for operating the HMI. Examples of parts include a desk arranged in a room, a concrete object such as a part constituting a product, a switch, a meter, etc., a specific function, and text, a figure, etc.
  • FIG. 2 shows, as an example, a case where five parts A to E are displayed on the screen of the display unit 14.
  • the user operates the operation unit 13 to input a selection operation to select multiple parts that the user wishes to group from among the five parts A to E displayed on the screen in this way.
  • the operation reception unit 111 accepts an operation to select multiple parts from among the five parts A to E displayed on the screen in accordance with the selection operation input by the user.
  • each of parts A to E is shown as a rectangle of the same size.
  • each of the multiple parts displayed on the screen is not limited to being rectangular, and may be other shapes including other polygonal shapes, circles, ellipses, etc., and may be different sizes.
  • the operation reception unit 111 receives a selection operation to select three parts A to C from the five parts A to E shown in FIG. 2.
  • the operation reception unit 111 can receive a selection operation using two selection methods: (1) a method of inputting a linear trajectory at a position on the screen that crosses multiple parts, and (2) a method of inputting a rectangular area at a position on the screen that overlaps multiple parts.
  • the operation reception unit 111 receives a selection operation for inputting a linear trajectory at a position on the screen that crosses multiple components.
  • the linear trajectory is a linear trajectory drawn by the user on the screen, and may be a straight trajectory or a curved trajectory.
  • the user operates the operation unit 13 to input a selection operation that draws a straight or curved linear trajectory on the screen so that at least a portion of the trajectory overlaps with the multiple parts to be selected. Specifically, the user moves a finger, a touch pen, etc., on the touch panel, or drags a mouse, a tracker, etc., so as to trace the multiple parts to be selected.
  • the operation reception unit 111 receives the selection operation thus input.
  • the user inputs a selection operation to draw a linear trajectory L1 at a position that crosses three of the five parts A to E, parts A to C, the three parts A to C are selected.
  • the linear trajectory L1 runs from the start point above part A to the end point below part C, crossing part A from its top edge to its bottom edge, crossing part B from its top edge to its left edge, and crossing part C from its top edge to its right edge.
  • the user inputs a selection operation to draw a linear trajectory L2 at a position that crosses three of the five parts A to E, parts C, B, and D, the three parts B to D are selected.
  • the linear trajectory L2 runs from the starting point below part C to the end point on the right side of part D, crossing part C from its bottom edge to its top edge, crossing part B from its bottom edge to its top edge, and crossing part D from its left edge to its right edge.
  • the operation reception unit 111 receives a selection operation for inputting a rectangular area at a position on the screen that overlaps with multiple components.
  • the rectangular area is a rectangular area created by the user on the screen.
  • the user operates the operation unit 13 to input a selection operation that draws a two-dimensional area on the screen so that it at least partially overlaps the multiple parts to be selected. Specifically, the user moves a finger, a touch pen, etc. on the touch panel from a start point to an end point so as to cover the multiple parts to be selected, or drags a cursor displayed on the screen.
  • the operation reception unit 111 receives the selection operation input in this manner.
  • Rectangular region R1 covers the area from the starting point in the upper left of part A to the end point in the lower right of part C, with the starting point and end point being opposite vertices.
  • Rectangular region R2 covers the range from the start point at the upper left of part B to the end point at the lower right of part E, with the start point and end point being opposite vertices.
  • the selection order determination unit 112 determines the selection order of the multiple selected parts based on the selection operation accepted by the operation acceptance unit 111 and the positional relationship of the multiple selected parts on the screen. Specifically, the selection order determination unit 112 determines the selection order of the multiple parts based on the selection method of the multiple parts in the accepted selection operation and the positional relationship of the multiple parts on the screen.
  • the selection order determination unit 112 determines the selection order of the parts, starting with the parts that are crossed by the linear trajectory, among the multiple selected parts.
  • the selection order determination unit 112 determines the order of parts A, B, and C, which is the order in which the linear trajectory L1 crosses, as the selection order of parts.
  • the selection order of parts determined in this way is shown by numbers in boxes in the lower part of Fig. 3.
  • the selection order determination unit 112 determines the order of parts C, B, and D, which is the order in which the linear trajectory L2 crosses, as the selection order of parts.
  • the selection order of parts determined in this way is shown by numbers in boxes in the lower part of FIG. 4.
  • the selection order determination unit 112 determines the selection order of multiple parts that are located at positions that overlap with the linear trajectory in the order in which the linear trajectory input as the selection operation crosses them.
  • the selection order determination unit 112 determines the selection order of the multiple selected parts, starting with the part closest to the start point of the rectangular area.
  • the selection order determination unit 112 determines the selection order of parts starting from the part with the smallest absolute value of the difference in vertical coordinate from the start point of the rectangular area.
  • the selection order determination unit 112 determines the selection order of the part with the smallest absolute value of the difference in horizontal coordinate from the start point of the rectangular area to be earlier among the multiple parts.
  • the selection order determination unit 112 determines the selection order of the part that is present at the back of the multiple parts to be earlier among the multiple parts.
  • the selection order determination unit 112 determines the selection order of parts starting from the part with the smallest absolute value of the difference in its horizontal coordinate from the start point of the rectangular area.
  • the selection order determination unit 112 determines the selection order of the part with the smallest absolute value of the difference in its vertical coordinate from the start point of the rectangular area to be earlier among the multiple parts.
  • the selection order determination unit 112 determines the selection order of the part that is present at the back of the multiple parts to be earlier among the multiple parts.
  • the selection order determination unit 112 determines the order of parts to be the selection order of parts A, B, and C, which are closest to the start point of rectangular area R1 in a comparison of their vertical coordinates.
  • the selection order of parts determined in this way is shown by numbers in squares in the lower part of Fig. 5.
  • the selection order determination unit 112 determines the order of parts to be selected as follows: part C, part B, and part E, which are closest to the start point of rectangular region R1 in a comparison of their horizontal coordinates.
  • the selection order of parts determined in this way is shown by numbers in squares in the lower part of FIG. 6.
  • the selection order determination unit 112 determines the selection order of multiple parts that overlap the rectangular area based on the start and end points of the rectangular area input as a selection operation and the aspect ratio of the rectangular area.
  • the selection order determination unit 112 further determines the selection order of the sides of the multiple parts whose selection orders have been determined.
  • the selection order determination unit 112 determines the selection order of the sides from among the four sides of a rectangle circumscribing each of the parts whose selection orders have been determined, in accordance with a predetermined criterion.
  • the selection order determination unit 112 When the operation receiving unit 111 receives a selection operation for inputting a linear trajectory, the selection order determination unit 112 first determines the order of one side of a rectangle circumscribing the first part in the selection order among the multiple selected parts, which last intersects with the linear trajectory. Next, the selection order determination unit 112 determines the order of two sides of a circumscribing rectangle that first and last intersect with the linear trajectory, starting from second, for at least one part other than the first and last parts in the selection order among the multiple selected parts. Furthermore, the selection order determination unit 112 finally determines the order of one side of a rectangle circumscribing the last part in the selection order, which first intersects with the linear trajectory.
  • the selection order determination unit 112 determines the order of edge selection to be the bottom edge of part A, the top edge of part B, the left edge of part B, and the top edge of part C.
  • the edge selection order determined in this way is shown by circled numbers in the lower part of Fig. 3.
  • the selection order determination unit 112 determines the order of edge selection to be the top edge of part C, the bottom edge of part B, the top edge of part B, and the left edge of part D.
  • the edge selection order determined in this manner is shown by circled numbers in the lower part of FIG. 4.
  • the selection order determination unit 112 selects, for each pair of two parts that are consecutively selected from among the multiple selected parts, a pair of one side of a rectangle circumscribing the earlier selected part and one side of a rectangle circumscribing the later selected part, with the distance between the sides being the closest. Then, the selection order determination unit 112 determines the order of selection of the sides for the two sides of the pair selected from each pair of two parts that are consecutively selected, in the order of the side of the earlier selected part and the side of the later selected part.
  • the distance between the sides is, for example, the Euclidean distance between the midpoint of one side and the midpoint of the other side.
  • the selection order determination unit 112 selects one of the multiple pairs with equal distances according to a predetermined rule. Specifically, when the rectangular area has a vertically long shape, the selection unit 112 selects, from the multiple pairs with equal distances, the pair with the smallest absolute value of the difference in vertical coordinates between the midpoint of the side of the component that was selected earlier and the start point of the rectangular area.
  • the selection order determination unit 112 selects, from the multiple pairs, the pair with the smallest absolute value of the difference in horizontal coordinates between the midpoint of the side of the component that was selected earlier and the start point of the rectangular area.
  • the selection unit 112 selects, from the multiple pairs with equal distances, the pair with the smallest absolute value of the difference in horizontal coordinates between the midpoint of the side of the component that was selected earlier and the start point of the rectangular area. If there are still multiple pairs with equal distances, the selection order determination unit 112 selects the pair with the smallest absolute difference in vertical coordinate between the midpoint of the side of the component selected earlier and the start point of the rectangular area.
  • the selection order determination unit 112 determines the order of edge selection to be the bottom edge of part A, the top edge of part B, the bottom edge of part B, and the top edge of part C.
  • the edge selection order determined in this way is shown by circled numbers in the lower part of Fig. 5.
  • the selection order determination unit 112 determines the order of edge selection to be the top edge of component C, the bottom edge of component B, the right edge of component B, and the left edge of component E.
  • the edge selection order determined in this manner is shown by circled numbers in the lower part of FIG. 6.
  • the rectangle circumscribing the part coincides with the sides that form the periphery of the part. Therefore, expressions such as “bottom side of part A” and “top side of part B” in the above and following descriptions have the same meaning as “bottom side of the rectangle circumscribing part A” and “top side of the rectangle circumscribing part B".
  • the shapes of multiple parts displayed on the screen may be other than rectangular.
  • the rectangle circumscribing the part is located outside the periphery of the part, as shown by the dashed line in the lower part of Fig. 7.
  • the selection order determination unit 112 determines the selection order of the sides of the virtual rectangle that is located outside the periphery of such a part.
  • the selection order determination unit 112 stores the determined selection order in selection order information 121.
  • the selection order information 121 is data that temporarily holds the selection order determined by the selection order determination unit 112.
  • selection order information 121 defines the selection order of parts and the selection order of edges.
  • selection order information 121 holds the selection order of parts in the order of part A, part B, and part C, and holds the selection order of edges in the order of the bottom edge of part A, the top edge of part B, the left edge of part B, and the top edge of part C.
  • the parent-child relationship setting unit 113 sets a parent-child relationship between the multiple selected parts based on the selection order determined by the selection order determination unit 112.
  • the parent-child relationship means a subordinate relationship set between multiple parts. In general grouping, the relationships between multiple parts are equal, but in the parent-child relationship, a subordinate relationship is set between multiple parts.
  • the parent-child relationship setting unit 113 sets a parent-child relationship for the multiple selected parts, with the part selected earlier as the parent part and the part selected later as the child part. At this time, if the multiple selected parts are only two parts, the parent-child relationship setting unit 113 sets a parent-child relationship for a combination of two selected parts, with the part selected earlier as the parent part and the part selected later as the child part.
  • the parent-child relationship setting unit 113 sets a parent-child relationship for each of a multiple combinations, each of which is a combination of two parts of the at least three selected parts whose selection order determined by the selection order determination unit 112 is consecutive, with the part selected earlier as the parent part and the part selected later as the child part.
  • the parent-child relationship setting unit 113 first sets a parent-child relationship for the combination of parts A and B, with part A being the parent part and part B being the child part. Then, the parent-child relationship setting unit 113 secondly sets a parent-child relationship for the combination of parts B and C, with part B being the parent part and part C being the child part.
  • the parent-child relationship setting unit 113 first sets a parent-child relationship for the combination of parts C and B, with part C as the parent part and part B as the child part. Then, the parent-child relationship setting unit 113 secondly sets a parent-child relationship for the combination of parts B and D, with part B as the parent part and part D as the child part.
  • the parent-child relationship setting unit 113 first sets a parent-child relationship for the combination of parts C and B, with part C as the parent part and part B as the child part. Then, the parent-child relationship setting unit 113 secondly sets a parent-child relationship for the combination of parts B and E, with part B as the parent part and part E as the child part.
  • the parent-child relationship setting unit 113 further sets the parent-child relationship of sides.
  • the parent-child relationship of sides corresponds to the corresponding relationship between the sides in the arrangement of the two components for which the parent-child relationship has been set.
  • the parent component and the child component are arranged in the layout of a plurality of components including them so that the sides for which the parent-child relationship has been set face each other or so that the sides for which the parent-child relationship has been set are connected to each other.
  • each part represents a desk to be placed in a room
  • the parts with parent-child relationships are arranged so that the edges with parent-child relationships face each other.
  • each part represents an individual part for assembling a product
  • the parts with parent-child relationships are combined so that the edges with parent-child relationships are connected.
  • the parent-child relationship setting unit 113 sets a parent-child relationship between one side of a rectangle circumscribing the parent component and one side of a rectangle circumscribing the child component. More specifically, based on the selection order of the edges determined by the selection order determination unit 112, for a combination of two edges where the selection order is continuous and the edge selected earlier is on the parent component side and the edge selected later is on the child component side, the parent-child relationship setting unit 113 sets a parent-child relationship in which the edge selected earlier is the parent and the edge selected later is the child.
  • the parent-child relationship setting unit 113 sets a parent-child relationship between one side of a rectangle circumscribing the parent part that last intersects with the linear trajectory and one side of a rectangle circumscribing the child part that first intersects with the linear trajectory for each combination of two parts for which a parent-child relationship has been set.
  • the parent-child relationship setting unit 113 first sets a parent-child relationship of edges in which the bottom edge of part A is the parent and the top edge of part B is the child. Then, the parent-child relationship setting unit 113 secondly sets a parent-child relationship of edges in which the left edge of part B is the parent and the top edge of part C is the child.
  • the parent-child relationship setting unit 113 first sets a parent-child relationship of edges in which the top edge of part C is the parent and the bottom edge of part B is the child. Then, the parent-child relationship setting unit 113 secondly sets a parent-child relationship of edges in which the top edge of part B is the parent and the left edge of part D is the child.
  • the parent-child relationship setting unit 113 sets the parent-child relationship for each combination of two parts for which a parent-child relationship has been set, for the combination of one side of a rectangle circumscribing the parent part and one side of a rectangle circumscribing the child part, with the side distance between them being the shortest.
  • the parent-child relationship setting unit 113 first sets a parent-child relationship of edges in which the bottom edge of part A is the parent and the top edge of part B is the child. Then, the parent-child relationship setting unit 113 secondly sets a parent-child relationship of edges in which the bottom edge of part B is the parent and the top edge of part C is the child.
  • the parent-child relationship setting unit 113 first sets a parent-child relationship of edges in which the top edge of part C is the parent and the bottom edge of part B is the child. Then, the parent-child relationship setting unit 113 secondly sets a parent-child relationship of edges in which the right edge of part B is the parent and the left edge of part E is the child.
  • the parent-child relationship that is set when multiple parts are selected as in the upper rows of Figures 3 to 7 is shown by an arrow pointing from the parent part to the child part.
  • the parent-child relationship setting unit 113 displays an arrow pointing from the parent part to the child part on the screen as a symbol indicating the parent-child relationship of the parts.
  • the parent-child relationship setting unit 113 displays the arrow pointing from the parent part to the child part so as to connect the midpoints of the pair of sides for which the parent-child relationship is set.
  • the arrow is one example of a symbol indicating a parent-child relationship, and a symbol other than an arrow may be used to indicate the parent-child relationship.
  • the parent-child relationship setting unit 113 executes the process of setting a parent-child relationship for two parts that are consecutively selected, for each pair of two parts that are consecutively selected and are included in the three or more parts selected by the selection operation. Furthermore, the parent-child relationship setting unit 113 also sets a parent-child relationship for the edges of the parts for which a parent-child relationship has been set.
  • the group of parts for which a parent-child relationship has been set by the parent-child relationship setting unit 113 will be referred to as "parent-child relationship set parts.”
  • the parent-child relationship setting unit 113 stores information indicating the set parent-child relationships in parent-child relationship information 122.
  • the parent-child relationship information 122 is data that holds the parent-child relationships set between parts and edges by the parent-child relationship setting unit 113.
  • parent-child relationship information 122 is not stored separately for each component, but is stored collectively in the parent-child relationship setting component.
  • the settings stored in parent-child relationship information 122 are applied recursively from parent components to child components.
  • parent-child relationship information 122 has each of the following information: a parts list, a root part, an edge list, and a setting list.
  • the parts list has information on multiple parts held in selection order information 121 in the same selection order as selection order information 121.
  • the edge list has information on multiple edges held in selection order information 121 in the same selection order as selection order information 121.
  • parent-child relationship information 122 holds references to parts and edges for which parent-child relationships are set, according to the selection order determined by selection order determination unit 112.
  • a root part is a part that does not have a parent part among multiple parts for which a parent-child relationship has been established, and corresponds to the highest-ranking part in the parent-child relationship. For example, if the selection order of parts determined by the selection order determination unit 112 is part A, part B, and part C, then the root part is part A.
  • the parent-child relationship setting unit 113 sets the highest-ranking part among multiple parts for which a parent-child relationship has been established as the root part.
  • the setting list defines the settings that are applied recursively to components that have parent-child relationships. Specifically, the setting list holds information on the settings, setting values, and forward offsets.
  • the settings are information related to the placement, alignment, and attributes of parts.
  • the placement of parts is, for example, the X and Y coordinates of the parts on the screen.
  • the alignment of parts is, for example, the width of the parts on the screen, the height of the parts, and the spacing between adjacent parts.
  • the attributes of parts are, for example, the fill color of the parts, the line width of the parts, a character string related to the parts, a memory address, and the like.
  • the placement, alignment, and attributes of parts are collectively referred to as "settings.”
  • the settings list holds information such as the fill color of the parts and the Y coordinate of the parts as settings.
  • the setting value is the specific value when applying the setting to the root part.
  • the forward offset is a value added to the setting value of the parent part to derive the setting value of the child part.
  • the forward offset is used to align multiple parts at a fixed interval or to set consecutive values for multiple parts.
  • the setting list holds RGB (Red, Green, Blue) brightness values as the forward offset of the fill color, and holds a value equivalent to the difference in the Y coordinate between the parent part and the child part as the forward offset of the Y coordinate.
  • the user can input the setting value and forward offset of each setting in the setting list by operating the operation unit 13.
  • the setting application unit 114 applies settings based on the settings of the parent component to the settings of the child components for each of a plurality of combinations for which a parent-child relationship has been set by the parent-child relationship setting unit 113.
  • the user operates the operation unit 13 to input an operation to apply the settings from the operation screen of the parent-child relationship information 122.
  • the setting application unit 114 recursively applies the settings defined in the setting list of the parent-child relationship information 122 to the group of components for which a parent-child relationship has been set.
  • the setting application unit 114 sets the setting value of the child part to a value obtained by adding an offset to the setting value of the parent part for each of the multiple combinations in which a parent-child relationship is established.
  • the setting application unit 114 applies the setting value of each setting defined in the setting list to the root part.
  • the setting application unit 114 applies a value obtained by adding a forward offset to the setting value of each setting applied to the root part to a child part having the root part as its parent.
  • the setting application unit 114 applies a value obtained by further adding a forward offset to the setting value of each setting to a child part having the above-mentioned child part to which the setting has been applied as its parent.
  • the setting application unit 114 recursively applies the settings to each combination of two parts in which a parent-child relationship is established.
  • FIG. 10 an example is shown in which settings are applied to multiple parts by the setting application unit 114.
  • the setting application unit 114 applies the settings in the setting list shown in FIG. 9, the settings are applied to parts A to C as shown in the lower part of FIG. 10.
  • the setting application unit 114 sets the fill color of part A, which is the root part, to blue, and sets the Y coordinate of part A to 10.
  • the setting application unit 114 sets the fill color of part B, which is a child of part A, to blue, and sets the Y coordinate of part B to 40, which is the Y coordinate of part A plus 30.
  • the setting application unit 114 sets the fill color of part C, which is a child of part B, to blue, and sets the Y coordinate of part C to 70, which is the Y coordinate of part B plus 30. This makes it possible to change the settings of multiple parts according to certain rules with fewer steps.
  • the parent-child relationship information process shown in Fig. 11 and the setting application process shown in Fig. 12 are examples of a drawing support method.
  • the parent-child relationship setting process shown in FIG. 11 begins when a user starts drawing software pre-installed in the drawing support device 10 and displays multiple parts on the screen of the display unit 14.
  • the control unit 11 When the parent-child relationship setting process is started, the control unit 11 functions as the operation reception unit 111 and receives a selection operation for selecting multiple parts to be selected from among the multiple parts displayed on the screen (step S1). Specifically, the control unit 11 receives a selection operation for inputting linear trajectories L1, L2 at positions that intersect the multiple parts to be selected as a first selection method, as shown in FIG. 3, FIG. 4, or FIG. 7. Alternatively, the control unit 11 receives a selection operation for inputting rectangular regions R1, R2 at positions that overlap the multiple parts to be selected as a second selection method, as shown in FIG. 5 or FIG. 6.
  • control unit 11 When the control unit 11 receives the selection operation, it functions as the selection order determination unit 112 and determines the selection order of the multiple selected parts (step S2). Specifically, the control unit 11 determines the selection order of the multiple selected parts in the order that the input linear trajectory crosses them, or based on the start point and aspect ratio of the input rectangular area.
  • control unit 11 determines the selection order of the sides (step S3). Specifically, the control unit 11 determines the selection order of the sides from among the four sides of a rectangle circumscribing each part whose selection order has been determined, in accordance with a predetermined criterion.
  • control unit 11 updates the selection order information 121 (step S4). More specifically, the control unit 11 stores the determined selection order of the parts and edges in the selection order information 121.
  • the control unit 11 After updating the selection order information 121, the control unit 11 functions as a parent-child relationship setting unit 113 and sets the parent-child relationships of the parts (step S5). Specifically, for each combination of two parts that are consecutive in the selection order determined in step S2 among the multiple parts selected in step S1, the control unit 11 sets a parent-child relationship in which the part selected earlier in the selection order is the parent part and the part selected later in the selection order is the child part.
  • the control unit 11 After setting the parent-child relationship of the parts, the control unit 11 sets the parent-child relationship of the sides (step S6). Specifically, for each combination of two parts for which a parent-child relationship has been set, the control unit 11 sets a parent-child relationship in which one side of a rectangle circumscribing the parent part is the parent, and one side of a rectangle circumscribing the child part is the child.
  • the control unit 11 updates the parent-child relationship information 122 (step S7). More specifically, the control unit 11 updates the parts list, edge list, and information on the root part in the parent-child relationship information 122 based on the parent-child relationships of the parts and edges that have been set.
  • control unit 11 After updating the parent-child relationship information 122, the control unit 11 releases the selection order of the parts and edges from memory (step S8). This completes the parent-child relationship setting process shown in FIG. 11.
  • the setting application process shown in FIG. 12 starts when an operation is input to apply the settings in the setting list to multiple components for which parent-child relationships have been set by the parent-child relationship setting process shown in FIG. 11.
  • the control unit 11 functions as the setting application unit 114.
  • the control unit 11 acquires one setting from the setting list in the parent-child relationship information 122 (step S11).
  • the control unit 11 acquires one setting from among the fill color, Y coordinate, etc., defined in the setting list.
  • control unit 11 When one setting is acquired, the control unit 11 applies the setting value of the acquired setting to the root part (step S12). In the example of FIG. 9, when a fill color setting is acquired, the control unit 11 sets the fill color of part A, which is the root part, to the setting value "blue.”
  • control unit 11 adds the forward offset defined in the acquired setting to the setting value applied to the root part (step S13).
  • the control unit 11 applies the setting value after the forward offset has been added to the next part in the forward direction in the parts list (step S14).
  • parts B and C exist in the forward direction of part A, which is the root part. Therefore, the control unit 11 applies the setting value after the forward offset has been added to part B, which is the next part after the root part.
  • the control unit 11 determines whether there are any more parts in the forward direction in the parts list (step S15). If there are more parts in the forward direction (step S15; YES), the control unit 11 returns the process to step S13. The control unit 11 then further adds the forward offset to the current setting value, and applies the added setting value to the next part in the forward direction in the parts list. In this way, the control unit 11 applies the setting value to which the forward offset has been added in sequence to each part in the forward direction in the parts list.
  • step S15 determines whether or not there are any unapplied settings remaining in the setting list (step S16). If there are any unapplied settings remaining (step S16; YES), the control unit 11 returns the process to step S11 and acquires one unapplied setting from the setting list. The control unit 11 then executes the processes of steps S12 to S15 and applies the setting values of the acquired setting to each of the multiple parts with which a parent-child relationship has been established. In this way, the control unit 11 applies the setting values of each setting included in the setting list to each of the multiple parts with which a parent-child relationship has been established.
  • step S16 If there are no unapplied settings remaining (step S16; NO), the control unit 11 ends the setting application process shown in FIG. 12.
  • the drawing support device 10 determines the selection order of multiple parts based on the selection operation of selecting multiple parts displayed on the screen and the positional relationship of the multiple parts, and sets a parent-child relationship for the multiple parts in which the part selected earlier in the selection order is the parent part and the part selected later in the selection order is the child part.
  • a parent-child relationship can be set between multiple parts by an intuitive and easy operation of inputting a linear trajectory or a rectangular area. As a result, the effort required to set multiple parts can be reduced.
  • a multi-stage parent-child relationship can be set with a single operation, so the user does not need to repeat the process of selecting parts one by one and setting the parent-child relationship. Therefore, the user's effort can be significantly reduced when there are a large number of parts.
  • the drawing support device 10 applies settings based on the settings of the parent component to the settings of the child components. This allows settings and changes to be made recursively all at once for multiple components that have parent-child relationships, reducing the amount of work required to set multiple components. In particular, this significantly reduces the amount of work required by the user when there are a large number of components.
  • the drawing support device 10 according to the second embodiment further sets a parent-child relationship between a group of components for which a parent-child relationship has already been set and another component.
  • the drawing support device 10 according to the second embodiment can set multiple parent-child relationships.
  • the upper part of Figure 13 shows an example in which parts A and B, which are a group of parts for which a parent-child relationship has already been set by the parent-child relationship setting unit 113, and another part C are displayed on the screen of the display unit 14.
  • the user inputs a selection operation to draw a rectangular area R3 that stretches from the lower right of part C to the upper left of part A, as an example of a new selection operation to select parts A to C.
  • the new selection operation is not limited to an operation to draw a rectangular area R3, but may also be an operation to draw a linear trajectory.
  • the group of parts A and B is treated equivalent to a single part called parent-child relationship setting part AB.
  • the operation reception unit 111 receives the new selection operation.
  • the selection order determination unit 112 determines the selection order of the parent-child relationship setting component AB and the component C based on the new selection operation received by the operation reception unit 111. In the example of FIG. 13, the selection order determination unit 112 determines the selection order of the component C closest to the start point of the rectangular region R3 to be first, and the selection order of the parent-child relationship setting component AB to be second.
  • the parent-child relationship setting unit 113 sets a new parent-child relationship between parent-child relationship setting component AB and component C based on the selection order determined by the selection order determination unit 112.
  • the parent-child relationship setting unit 113 sets a parent-child relationship in which component C is the parent component and parent-child relationship setting component AB is the child component. This generates parent-child relationship setting component ABC, which has parent-child relationship setting component AB and component C in its component list.
  • the parent-child relationship setting unit 113 also sets a parent-child relationship between one side of a rectangle circumscribing the parent-child relationship setting component AB and one side of a rectangle circumscribing the component C.
  • the rectangle circumscribing the parent-child relationship setting component AB corresponds to the smallest rectangle that contains the components A and B, as shown by the thick solid line in the lower part of FIG. 13.
  • the setting application unit 114 applies the setting based on the setting of the parent part C to the setting of the child part AB. Specifically, as in the first embodiment, the setting application unit 114 sets the setting value of the parent-child relationship setting part AB to a value obtained by adding a forward offset to the setting value of part C. At that time, the setting application unit 114 treats the parent-child relationship setting part AB as a single part having a rectangular shape circumscribing the parent-child relationship setting part AB, and sets the parent-child relationship setting part AB.
  • a group of parts for which a parent-child relationship has already been set can be treated as a single part, and a parent-child relationship can be set between it and another part.
  • a parent-child relationship setting part ABC is generated that has a parent-child relationship setting part AB in its parts list
  • the parent-child relationship setting part AB can be set from the settings of the parent-child relationship setting part ABC.
  • the drawing support device 10 changes at least one of a pair of edges for which a parent-child relationship has already been set to another edge in the same part in response to a user operation.
  • FIG. 14 shows an example in which parts A to C, which are a group of parts for which parent-child relationships have already been set by the parent-child relationship setting unit 113, are displayed on the screen of the display unit 14.
  • a parent-child relationship of an edge is set between the bottom edge of part A and the top edge of part B
  • a parent-child relationship of an edge is set between the bottom edge of part B and the top edge of part C.
  • the operation reception unit 111 accepts a change operation to change one side of a pair of sides for which a parent-child relationship has been set by the parent-child relationship setting unit 113 to another side in the same part.
  • the user can use a drag operation to move one end of an arrow, which is an example of a symbol indicating a parent-child relationship and is displayed on the screen, to another side in the same part. This allows the user to input a change operation to change one side of a pair of sides for which a parent-child relationship has already been set to another side.
  • the parent-child relationship setting unit 113 changes the parent-child relationship set between a pair of edges to a parent-child relationship between another edge in the same component and the other edge of the pair of edges.
  • the parent-child relationship setting unit 113 changes the parent-child relationship set for the pair of edges between parts A and B to a parent-child relationship between the right edge of part A and the top edge of part B, which is the other edge of the pair of edges.
  • the parent-child relationship of an edge that has already been set between a parent component and a child component can be changed to a parent-child relationship between the same or a different edge of the parent component and the same or a different edge of the child component.
  • This makes it possible to change the parent-child relationship of an edge with a simple operation, without having to redo the parent-child relationship settings.
  • the drawing support device 10 changes at least one of a pair of parts for which a parent-child relationship has already been established to a different part in response to a user operation.
  • FIG. 15 shows an example in which parts A and B, which are a group of parts for which a parent-child relationship has already been set by the parent-child relationship setting unit 113, and part C for which a parent-child relationship has not yet been set, are displayed on the screen of the display unit 14.
  • a parent-child relationship of sides is set between the bottom side of part A and the top side of part B.
  • the operation receiving unit 111 receives a change operation to change one of a pair of parts for which a parent-child relationship has been set by the parent-child relationship setting unit 113 to a different part from the pair of parts displayed on the screen.
  • the user can use a drag operation to move one end of an arrow, which is an example of a symbol indicating a parent-child relationship displayed on the screen, to another part for which a parent-child relationship has not been set. This allows the user to input a change operation to change one of a pair of parts for which a parent-child relationship has already been set to a different part.
  • the parent-child relationship setting unit 113 changes the parent-child relationship that has been set between a pair of parts for which a parent-child relationship has already been set to a parent-child relationship between the other part of the pair and another part for which a parent-child relationship has not yet been set.
  • the parent-child relationship setting unit 113 changes the parent-child relationship set between parts A and B to a parent-child relationship in which part A, the other of the pair, is the parent part and part C is the child part. Then, the parent-child relationship setting unit 113 changes the parent-child relationship of the side set between parts A and B to a parent-child relationship in which the bottom side of part A is the parent and the left side of part C is the child.
  • the parent-child relationship setting unit 113 further sets a parent-child relationship between the other part and one of the pair of parts. Specifically, as shown in the lower part of FIG. 15, the parent-child relationship setting unit 113 sets a parent-child relationship in which part C, which is the other part, is the parent part and part B, which is one of the pair of parts, is the child part. Then, the parent-child relationship setting unit 113 sets a parent-child relationship in which the right side of part C is the parent and the bottom side of part B is the child.
  • the parent-child relationship setting unit 113 sets the parent in the parent-child relationship of the edge between parts C and B to the opposite side, the right side of part C.
  • the drawing support device 10 can reselect components of a group of parts for which a parent-child relationship has been set by the parent-child relationship setting unit 113 after the setting application unit 114 applies the settings to the group of parts.
  • FIG. 16 shows an example in which parts A to C, which are a group of parts for which parent-child relationships have already been set by the parent-child relationship setting unit 113, and part D, for which a parent-child relationship has not yet been set, are displayed on the screen of the display unit 14.
  • the setting application unit 114 has set the fill color of part A, which is the root part, for parts A to C to (0, 0, 0), and the forward offset to (64, 0, 0).
  • the user can input a reselection operation to reselect the components of the group of parts A to C. This allows the user to change the components of the group of parts for which a parent-child relationship has already been set and the settings have been applied, or the selection order of those components.
  • the user selects "Reselect part” - "Select rectangle" from the operation screen of parent-child relationship setting parts A to C. Then, as shown in the upper part of Figure 16, the user inputs a reselection operation to reselect parts A to D as components of the part group of parts A to C. For example, the user inputs a selection operation to draw a rectangular area R4 that stretches from the lower right of part D to the upper left of part A. Note that the reselection operation is not limited to the operation of drawing a rectangular area R4, and can also be the operation of drawing a linear trajectory.
  • the operation reception unit 111 accepts the reselection operation.
  • the selection order determination unit 112 determines the selection order of parts A to D based on the reselection operation accepted by the operation reception unit 111. In the example of FIG. 16, the selection order determination unit 112 determines the selection order as follows, in order of proximity to the start point of rectangular region R4: part D, part C, part B, and part A.
  • the parent-child relationship setting unit 113 sets parent-child relationships between parts D and C, between parts C and B, and between parts B and A, based on the selection order determined by the selection order determination unit 112. At this time, the parent-child relationship setting unit 113 sets part D, which is first in the selection order, as the root part. This generates parent-child relationship-set parts A to D, each of which has parts A to D in its parts list.
  • the setting application unit 114 reapplies the settings that were applied to the group of parts A to C prior to the reselection operation to the group of parts A to D after the component parts have been reselected by the reselection operation. Specifically, as shown in the lower part of FIG. 16, the setting application unit 114 sets the fill color of part D, which is the root part, to (0, 0, 0). Then, the setting application unit 114 sets the fill colors of parts C, B, and A according to the forward offset setting values (64, 0, 0).
  • the drawing support device 10 accepts the reselection of a component part of a group of parts for which a parent-child relationship has already been set, and reapplies the same settings as before the reselection operation to the group of parts after the component part has been reselected by the reselection operation.
  • This allows the user to reselect the parts and edges for which a parent-child relationship is to be set with a simple operation, without the need to re-enter settings such as setting values and offsets.
  • the drawing support device 10 reverses the parent-child relationships of multiple parts that have parent-child relationships set, either partway through or entirely.
  • FIG. 17 shows an example in which parts A to C, which are a group of parts for which parent-child relationships have already been set by the parent-child relationship setting unit 113, are displayed on the screen of the display unit 14.
  • a parent-child relationship of an edge is set between the bottom edge of part A and the top edge of part B
  • a parent-child relationship of an edge is set between the bottom edge of part B and the top edge of part C.
  • the operation reception unit 111 receives a reversal operation that reverses the parent-child relationship in at least one of the multiple combinations for which the parent-child relationship has been set by the parent-child relationship setting unit 113.
  • the user can reverse the start and end points of an arrow, which is an example of a symbol indicating a parent-child relationship, displayed on the screen by dragging.
  • the user can reverse an arrow extending from part A to part B, changing it to an arrow extending from part B to part A.
  • the user can open the operation screen for parent-child relationship setting part ABC and change the root part of parent-child relationship setting part ABC from part A to part B, thereby reversing the parent-child relationship in the combination of parts A and B.
  • the user can input a reversal operation that reverses the parent-child relationship in at least one combination for which a parent-child relationship has already been set.
  • at least one combination for which the parent-child relationship is to be reversed must include a root part.
  • the parent-child relationship setting unit 113 reverses the parent-child relationship in at least one of the multiple combinations for which a parent-child relationship has been set in response to a user operation. For example, when a reversal operation is received to reverse the parent-child relationship in a combination of part A, which is a parent part and root part, and part B, which is a child part, the parent-child relationship setting unit 113 changes the parent-child relationship in the combination of parts A and B to a parent-child relationship in which part B is the parent part and root part, and part A is the child part, as shown in the lower part of Figure 17.
  • FIG. 18 shows an example of parent-child relationship information 122 when the parent-child relationship between parts A and B is reversed.
  • the parts list remains unchanged from the original selection order of parts A, B, and C, whereas the root part has been changed to part B due to the reversal of the parent-child relationship between parts A and B.
  • the parent-child relationship information 122 holds information on reverse offsets in addition to forward offsets in the setting list.
  • the reverse offset is a second offset prepared separately from the forward offset, which is the first offset, and is used between parts whose parent-child relationships are reversed.
  • the reverse offset is set to a value obtained by multiplying the value of the forward offset by -1.
  • the reverse offset is not limited to this, and any value may be set independently of the forward offset.
  • the forward offset is applied to a child part that is located below the parent part in the parts list, i.e., a child part whose selection order determined by the selection order determination unit 112 is after the parent part.
  • the backward offset is applied to a child part that is located above the parent part in the parts list, i.e., a child part whose selection order determined by the selection order determination unit 112 is before the parent part.
  • the setting application unit 114 applies settings based on the settings of the parent part to the settings of the child parts for each of the multiple combinations for which the parent-child relationships have been set by the parent-child relationship setting unit 113, based on the parent-child relationship information 122 that includes such reverse offsets.
  • the setting application unit 114 sets the setting value of the child component to a value obtained by adding a forward offset to the setting value of the parent component for combinations other than at least one combination in which the parent-child relationship has been reversed by a reversal operation, among the multiple combinations in which a parent-child relationship has been set. In other words, the setting application unit 114 applies the setting based on the forward offset to at least one combination in which the parent-child relationship has not been reversed, as in the first embodiment.
  • the setting application unit 114 sets the setting value of the child part to a value obtained by adding a reverse offset to the setting value of the parent part for at least one combination in which the parent-child relationship has been reversed by the reversal operation, among multiple combinations in which a parent-child relationship has been set.
  • the setting application process shown in FIG. 19 starts when an operation is input to apply the settings in the setting list to multiple components for which parent-child relationships have been set by the parent-child relationship setting process shown in FIG. 11.
  • the control unit 11 functions as the setting application unit 114.
  • control unit 11 executes the process of steps S11 to S15 described with reference to FIG. 12 in the first embodiment. As a result, the control unit 11 executes the process of applying the setting based on the forward offset to the setting obtained from the setting list.
  • control unit 11 After step S15, the control unit 11 returns the setting value to which the forward offset has been added to the initial value, which is the value set for the root part in step S12 (step S21).
  • control unit 11 After resetting the setting value to the initial value, the control unit 11 adds the reverse offset defined in the acquired setting to the setting value applied to the root part (step S22).
  • the control unit 11 applies the setting value after the reverse offset has been added to the next part in the reverse direction in the parts list (step S23).
  • part A exists in the reverse direction of part B, which is the root part. Therefore, the control unit 11 applies the setting value after the reverse offset has been added to part A, which is the next part after the root part.
  • the control unit 11 determines whether there are any more parts in the reverse direction in the parts list (step S24). If there are more parts in the reverse direction (step S24; YES), the control unit 11 returns the process to step S22. The control unit 11 then further adds the reverse offset to the current setting value, and applies the added setting value to the next part in the reverse direction in the parts list. In this way, the control unit 11 applies the setting value to which the reverse offset has been added in order to each part in the reverse direction in the parts list.
  • step S24 determines whether or not there are any unapplied settings remaining in the setting list (step S25). If there are any unapplied settings remaining (step S25; YES), the control unit 11 returns the process to step S11 and acquires one unapplied setting from the setting list. The control unit 11 then executes the processes of steps S12 to S15 and S21 to 24, and applies the setting values of the acquired settings to each of the multiple parts for which a parent-child relationship has been established. In this way, the control unit 11 applies the setting values of each setting included in the setting list to each of the multiple parts for which a parent-child relationship has been established.
  • step S25; NO If there are no unapplied settings remaining (step S25; NO), the control unit 11 ends the setting application process shown in FIG. 19.
  • the parent-child relationships are reversed partway through, or in their entirety. This allows the user to change the root part that is the basis for the settings with a simple operation, without having to redo the parent-child relationship settings. Also, different offset values can be set for the forward and reverse directions, which increases the flexibility of the settings.
  • the parent-child relationship setting unit 113 sets the parent-child relationship between the edges in addition to setting the parent-child relationship between the parts.
  • the parent-child relationship setting unit 113 does not have to set the parent-child relationship between the edges. Even without setting the parent-child relationship between the edges, by setting the parent-child relationship between the parts, it is possible to apply settings based on the settings of the parent part to the settings of the child part, thereby obtaining the effect of being able to efficiently edit the settings of multiple parts.
  • the linear trajectory L1 shown in FIG. 3 and the linear trajectory L2 shown in FIG. 4 have their starting and ending points located outside the parts, and completely cross from the first part to the last part.
  • the linear trajectory input as a selection operation may start partway through the first part and end partway through the last part.
  • the parts crossed by the linear trajectory may include not only parts completely crossed by the linear trajectory, but also parts partially crossed by the linear trajectory.
  • the operation reception unit 111 may select only parts completely crossed by the linear trajectory, or may select all parts that exist in a position that overlaps with the linear trajectory, including parts partially crossed by the linear trajectory. In this way, the settings of the parts selected by the linear trajectory can be changed as appropriate.
  • the rectangular region R1 shown in FIG. 5 and the rectangular region R2 shown in FIG. 6 have their start and end points located outside the parts, and completely contain the multiple parts to be selected.
  • the operation reception unit 111 may select only the parts that are completely contained within the rectangular region in this way, and exclude parts that only partially overlap with the rectangular region from the selection targets.
  • the operation reception unit 111 may select not only parts that are completely contained within the rectangular region, but also parts that only partially overlap with the rectangular region. In this way, the settings of the parts selected by the rectangular region can be changed as appropriate.
  • control unit 11 of the drawing support device 10 executes a program stored in the ROM or memory unit 12 to function as each of the operation reception unit 111, selection order determination unit 112, parent-child relationship setting unit 113, and setting application unit 114.
  • the control unit 11 may be dedicated hardware. Dedicated hardware is, for example, a single circuit, a composite circuit, a programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a combination of these.
  • ASIC Application Specific Integrated Circuit
  • FPGA Field-Programmable Gate Array
  • each unit may be realized by dedicated hardware, and other parts may be realized by software or firmware.
  • the control unit 11 can realize each of the above-mentioned functions by hardware, software, firmware, or a combination of these.
  • an operating program that specifies the operation of the drawing support device 10 to an existing computer such as a personal computer or information terminal device, it is possible to cause the computer to function as the drawing support device 10.
  • a program is an example of a drawing support program.
  • Such programs may be distributed in any manner, and may be distributed by storing them on a computer-readable recording medium such as a CD-ROM (Compact Disk ROM), a DVD (Digital Versatile Disk), an MO (Magneto Optical Disk), or a memory card, or may be distributed via a communications network such as the Internet.
  • a computer-readable recording medium such as a CD-ROM (Compact Disk ROM), a DVD (Digital Versatile Disk), an MO (Magneto Optical Disk), or a memory card, or may be distributed via a communications network such as the Internet.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)
  • Processing Or Creating Images (AREA)

Abstract

操作受付部(111)は、画面に表示された複数の部品を選択する選択操作を受け付ける。選択順決定部(112)は、操作受付部(111)により受け付けられた選択操作と、画面における複数の部品の位置関係と、に基づいて、複数の部品の選択順を決定する。親子関係設定部(113)は、複数の部品に対して、選択順が前の部品を親部品とし、選択順が後の部品を子部品とする親子関係を設定する。

Description

作画支援プログラム、作画支援装置及び作画支援方法
 本開示は、作画支援プログラム、作画支援装置及び作画支援方法に関する。
 作画を支援する技術の1つとして、画面に表示される複数の部品の間に親子関係を設定する技術が知られている。親子関係が設定された複数の部品の間では、親部品の設定を子部品に受け継ぐことができるため、部品の操作を容易にすることができる。例えば、特許文献1は、GUI(Graphical User Interface)画面を作成するアプリケーションにおいて、画面に表示される図形同士に親子関係を設定する技術を開示している。
特許3402350号公報
 上記のような技術において、複数の部品に対してより容易に親子関係を設定することができるようにすることで、複数の部品の設定に要する手間を抑制することが求められている。
 本開示は、上述のような課題を解決するためになされたものであり、複数の部品の設定に要する手間を抑制することが可能な作画支援プログラム等を提供することを目的とする。
 上記目的を達成するため、本開示に係る作画支援プログラムは、
 画面に表示された複数の部品を選択する選択操作を受け付ける操作受付手段、
 前記操作受付手段により受け付けられた前記選択操作と、前記画面における前記複数の部品の位置関係と、に基づいて、前記複数の部品の選択順を決定する選択順決定手段、
 前記複数の部品に対して、前記選択順が前の部品を親部品とし、前記選択順が後の部品を子部品とする親子関係を設定する親子関係設定手段、として機能させる。
 本開示では、画面に表示された複数の部品を選択する選択操作と画面における複数の部品の位置関係とに基づいて複数の部品の選択順を決定し、複数の部品に対して、選択順が前の部品を親部品とし、選択順が後の部品を子部品とする親子関係を設定する。従って、本開示によれば、複数の部品の設定に要する手間を抑制することができる。
実施の形態1に係る作画支援装置の構成を示すブロック図 実施の形態1に係る作画支援装置に表示される複数の部品の例を示す図 実施の形態1に係る作画支援装置に入力される線状軌跡を描く選択操作、及び、その選択操作により設定される親子関係の第1の例を示す図 実施の形態1に係る作画支援装置に入力される線状軌跡を描く選択操作、及び、その選択操作により設定される親子関係の第2の例を示す図 実施の形態1に係る作画支援装置に入力される矩形領域を描く選択操作、及び、その選択操作により設定される親子関係の第1の例を示す図 実施の形態1に係る作画支援装置に入力される矩形領域を描く選択操作、及び、その選択操作により設定される親子関係の第2の例を示す図 実施の形態1に係る作画支援装置に表示される複数の部品の形状が長方形状以外である場合における、線状軌跡を描く選択操作により設定される親子関係の例を示す図 実施の形態1に係る作画支援装置において生成される選択順情報の例を示す図 実施の形態1に係る作画支援装置において生成される親子関係情報の例を示す図 実施の形態1に係る作画支援装置において親子関係が設定された複数の部品に設定が適用される例を示す図 実施の形態1に係る作画支援装置により実行される親子関係設定処理の流れを示すフローチャート 実施の形態1に係る作画支援装置により実行される設定適用処理の流れを示すフローチャート 実施の形態2に係る作画支援装置において設定される親子関係の例を示す図 実施の形態3に係る作画支援装置において、親子関係が設定される辺を変更する例を示す図 実施の形態4に係る作画支援装置において、親子関係が設定される部品を変更する例を示す図 実施の形態5に係る作画支援装置において、親子関係が設定される部品を変更する例を示す図 実施の形態6に係る作画支援装置において、部品間に設定された親子関係が逆転する例を示す図 実施の形態6に係る作画支援装置において生成される親子関係情報の例を示す図 実施の形態6に係る作画支援装置により実行される設定適用処理の流れを示すフローチャート
 以下、実施の形態について、図面を参照しながら詳細に説明する。なお、図中同一又は相当部分には同一符号を付す。
 (実施の形態1)
 図1に、実施の形態1に係る作画支援装置10の構成を示す。作画支援装置10は、作画ソフトがインストールされた装置であって、作画に関するユーザの操作を支援する機能を有する。
 ここで、作画ソフトは、HMI(Human Machine Interface)における画面の外観、内部挙動等を設計するために使用される、HMI用の画面設計ソフトウェアである。作画ソフトは、GUIアプリケーションソフトウェアであって、画面に配置された複数の部品をまとめて整列及び編集する機能を有する。一例として、作画ソフトは、プログラマブルロジックコントローラ(Programmable Logic Controller:PLC)、センサ等の装置の状態を表示し、装置に対する操作を受け付けるプログラマブル表示器において表示される表示画面の作画を行うためのソフトウェアである。
 作画支援装置10は、ユーザにより操作される端末装置である。作画支援装置10は、例えば、パーソナルコンピュータ、タブレット端末、スマートフォン等であって、ユーザが操作可能な端末装置であれば、どのような装置であっても良い。図1に示すように、作画支援装置10は、制御部11と、記憶部12と、操作部13と、表示部14と、通信部15と、を備える。
 制御部11は、CPU(Central Processing Unit)を備える。CPUは、中央処理装置、中央演算装置、プロセッサ、マイクロプロセッサ、マイクロコンピュータ等とも呼び、作画支援装置10の制御に係る処理及び演算を実行する処理部として機能する。制御部11において、CPUは、記憶部12に記憶されているプログラム及びデータを読み出して動作し、作画支援装置10を統括制御する。
 記憶部12は、ROM(Read Only Memory)、RAM(Random Access Memory)、フラッシュメモリ等を備える。記憶部12は、制御部11が各種処理を行うために使用するプログラム及びデータを記憶する。また、記憶部12は、制御部11が各種処理を行うことにより生成又は取得するデータを記憶する。具体的に、記憶部12は、選択順情報121と、親子関係情報122と、を記憶している。
 操作部13は、タッチパネル、タッチパッド、キーボード、マウス、物理ボタン等の入力デバイスを備えており、ユーザからの操作入力を受け付ける。ユーザは、操作部13を操作することによって、様々な指示を作画支援装置10に入力することができる。
 表示部14は、液晶パネル、有機EL(Electro-Luminescence)パネル等の表示デバイスを備える。表示部14は、図示を省略する表示駆動回路によって駆動されて、様々な画像を表示する。
 通信部15は、作画支援装置10の外部の機器と通信するための通信インタフェースを備える。例えば、通信部15は、LAN(Local Area Network)、USB(Universal Serial Bus)等の周知の通信規格に則って、作画支援装置10の外部の装置と通信する。
 制御部11は、機能的に、操作受付手段の一例である操作受付部111と、選択順決定手段の一例である選択順決定部112と、親子関係設定手段の一例である親子関係設定部113と、設定適用手段の一例である設定適用部114と、を備える。
 これらの各機能は、ソフトウェア、ファームウェア、又は、ソフトウェアとファームウェアとの組み合わせによって実現される。ソフトウェア及びファームウェアは、プログラムとして記述され、記憶部12に格納される。そして、制御部11が、記憶部12に記憶されたプログラムを実行することによって、各機能を実現する。
 <選択操作の受け付け>
 操作受付部111は、画面に表示された複数の部品を選択する選択操作を受け付ける。ここで、部品は、表示画面において画像として含まれる要素である。より具体的には、部品は、HMIの操作に使用するGUIコンポーネント、図形等に相当する。部品として、例えば、部屋に配置される机、製品を構成するパーツのような具体的な物品を示すもの、スイッチ、メータのような特定の機能を示すもの、テキスト、図形のようなデータを示すもの等が挙げられる。
 図2に、一例として、5つの部品A~Eが表示部14の画面に表示された場合を示す。ユーザは、操作部13を操作して、このように画面に表示された5つの部品A~Eのうちから、グループ化することを望む複数の部品を選択する選択操作を入力する。操作受付部111は、ユーザにより入力された選択操作に従って、画面に表示された5つの部品A~Eのうちから、複数の部品を選択する操作を受け付ける。
 なお、図2では、理解を容易にするため、部品A~Eのそれぞれは、同じサイズの四角形状をしている。しかしながら、画面に表示される複数の部品のそれぞれは、四角形状であることに限らず、他の多角形状、円状、楕円状等を含む他の形状をしていても良いし、互いに異なるサイズであっても良い。
 以下では、一例として、操作受付部111が、図2に示した5つの部品A~Eのうちから3つの部品A~Cを選択する選択操作を受け付けた場合について説明する。操作受付部111は、(1)画面における複数の部品を横切る位置に線状軌跡を入力する方法と、(2)画面における複数の部品と重なる位置に矩形領域を入力する方法と、という2通りの選択方法で、選択操作を受け付けることができる。
 (1)第1の選択方法として、操作受付部111は、画面における複数の部品を横切る位置に線状軌跡を入力する選択操作を受け付ける。ここで、線状軌跡は、画面上においてユーザにより描かれる線状の軌跡であって、直線状の軌跡であっても、曲線状の軌跡であっても良い。
 ユーザは、操作部13を操作して、選択対象となる複数の部品に少なくとも一部が重なるように、画面上で直線状又は曲線状の線状軌跡を描く選択操作を入力する。具体的には、ユーザは、選択対象となる複数の部品をなぞるように、タッチパネル上で指、タッチペン等を移動させる、又は、マウス、トラッカ等をドラッグする。操作受付部111は、このようにして入力された選択操作を受け付ける。
 例えば、図3の上段に示すように、5つの部品A~Eのうちの3つの部品A~Cを横切る位置に線状軌跡L1を描く選択操作をユーザが入力した場合、3つの部品A~Cが選択される。線状軌跡L1は、部品Aの上方の始点から部品Cの下方の終点にかけて、部品Aをその上辺から下辺に横切り、部品Bをその上辺から左辺に横切り、部品Cをその上辺から右辺に横切っている。
 或いは、図4の上段に示すように、5つの部品A~Eのうちの3つの部品Cと部品Bと部品Dを横切る位置に線状軌跡L2を描く選択操作をユーザが入力した場合、3つの部品B~Dが選択される。線状軌跡L2は、部品Cの下方の始点から部品Dの右方の終点にかけて、部品Cをその下辺から上辺に横切り、部品Bをその下辺から上辺に横切り、部品Dをその左辺から右辺に横切っている。
 ユーザは、このように選択対象となる複数の部品を横切るように、画面上において線状軌跡を入力する。この方法で部品を選択することにより、直感的で、且つ、少ない操作で複数の部品を選択することができる。
 (2)第2の選択方法として、操作受付部111は、画面における複数の部品と重なる位置に矩形領域を入力する選択操作を受け付ける。ここで、矩形領域は、画面上においてユーザにより作成される矩形状の領域である。
 ユーザは、操作部13を操作して、選択対象となる複数の部品に少なくとも一部が重なるように、画面上で2次元の領域を描く選択操作を入力する。具体的には、ユーザは、選択対象となる複数の部品を覆うように、始点から終点まで、タッチパネル上で指、タッチペン等を移動させる、又は、画面に表示されたカーソルをドラッグする。操作受付部111は、このようにして入力された選択操作を受け付ける。
 例えば、図5の上段に示すように、5つの部品A~Eのうちの3つの部品A~Cと重なる位置に矩形領域R1を描く選択操作をユーザが入力した場合、3つの部品A~Cが選択される。矩形領域R1は、部品Aの左上方の始点から部品Cの右下方の終点にかけて、始点と終点とを向かい合う頂点とする範囲を覆っている。
 或いは、図6の上段に示すように、5つの部品A~Eのうちの3つの部品Bと部品Cと部品Eと重なる位置に矩形領域R2を描く選択操作をユーザが入力した場合、3つの部品B、部品C、部品Eが選択される。矩形領域R2は、部品Bの左上方の始点から部品Eの右下方の終点にかけて、始点と終点とを向かい合う頂点とする範囲を覆っている。
 ユーザは、このように選択対象となる複数の部品に重なるように、画面上において矩形領域を入力する。この方法で部品を選択することにより、直感的で、且つ、少ない操作で複数の部品を選択することができる。
 <部品の選択順の決定>
 図1に戻って、選択順決定部112は、操作受付部111により受け付けられた選択操作と、画面における選択された複数の部品の位置関係と、に基づいて、選択された複数の部品の選択順を決定する。具体的には、選択順決定部112は、受け付けられた選択操作における複数の部品の選択方法と、画面におけるその複数の部品の位置関係と、に基づいて、その複数の部品の選択順を決定する。
 (1)操作受付部111により線状軌跡を入力する選択操作を受け付けた場合、選択順決定部112は、選択された複数の部品のうちの、線状軌跡が横切る部品から順に、部品の選択順を決定する。
 例えば、操作受付部111が図3の上段に示した線状軌跡L1を入力する選択操作を受け付けた場合、選択順決定部112は、線状軌跡L1が横切る順である部品A、部品B、部品Cの順を、部品の選択順として決定する。このように決定された部品の選択順を、図3の下段において、四角で囲った数字で示す。
 或いは、操作受付部111が図4の上段に示した線状軌跡L2を入力する選択操作を受け付けた場合、選択順決定部112は、線状軌跡L2が横切る順である部品C、部品B、部品Dの順を、部品の選択順として決定する。このように決定された部品の選択順を、図4の下段において、四角で囲った数字で示す。
 このように、選択順決定部112は、選択操作として入力された線状軌跡が横切る順に、線状軌跡と重なる位置に存在する複数の部品の選択順を決定する。
 (2)操作受付部111により矩形領域を入力する選択操作を受け付けた場合、選択順決定部112は、選択された複数の部品のうちの、矩形領域の始点に近い部品から順に、部品の選択順を決定する。
 より詳細には、矩形領域が縦長の形状である場合、選択順決定部112は、矩形領域の始点との間で縦方向座標の差の絶対値が小さい部品から順に、部品の選択順を決定する。矩形領域内に縦方向座標が等しい複数の部品が存在する場合、選択順決定部112は、その複数の部品のうちの、矩形領域の始点との間で横方向座標の差の絶対値が小さい部品の選択順を、より早い順番に決定する。更に、矩形領域内に縦方向座標も横方向座標も等しい複数の部品が存在する場合、選択順決定部112は、その複数の部品のうちの背面に存在する部品の選択順を、より早い順番に決定する。
 これに対して、矩形領域が横長の形状である場合、選択順決定部112は、矩形領域の始点との間で横方向座標の差の絶対値が小さい部品から順に、部品の選択順を決定する。矩形領域内に横方向座標が等しい複数の部品が存在する場合、選択順決定部112は、その複数の部品のうちの、矩形領域の始点との間で縦方向座標の差の絶対値が小さい部品の選択順を、より早い順番に決定する。更に、矩形領域内に縦方向座標も横方向座標も等しい複数の部品が存在する場合、選択順決定部112は、その複数の部品のうちの背面に存在する部品の選択順を、より早い順番に決定する。
 例えば、操作受付部111が図5の上段に示した縦長の矩形領域R1を入力する選択操作を受け付けた場合、選択順決定部112は、縦方向座標の比較で矩形領域R1の始点に近い順である部品A、部品B、部品Cの順を、部品の選択順として決定する。このように決定された部品の選択順を、図5の下段において、四角で囲った数字で示す。
 或いは、操作受付部111が図6の上段に示した横長の矩形領域R2を入力する選択操作を受け付けた場合、選択順決定部112は、横方向座標の比較で矩形領域R1の始点に近い順である部品C、部品B、部品Eの順を、部品の選択順として決定する。このように決定された部品の選択順を、図6の下段において、四角で囲った数字で示す。
 このように、選択順決定部112は、選択操作として入力された矩形領域の始点及び終点の位置と矩形領域のアスペクト比とに基づいて、矩形領域に重なる位置に存在する複数の部品の選択順を決定する。
 <辺の選択順の決定>
 選択順決定部112は、このように部品の選択順を決定することに加えて、選択順が決定された複数の部品における辺の選択順を更に決定する。選択順決定部112は、予め定められた基準に従って、選択順が決定された各部品に外接する四角形の4辺のうちから、辺の選択順を決定する。
 (1)操作受付部111により線状軌跡を入力する選択操作を受け付けた場合、選択順決定部112は、選択された複数の部品のうちの、選択順が最初の部品に外接する四角形における、線状軌跡と最後に交差する1辺の順番を1番目に決定する。次に、選択順決定部112は、選択された複数の部品のうちの、選択順が最初と最後以外の少なくとも1つの部品のそれぞれに対して、外接する四角形における、線状軌跡と最初と最後に交差する2辺の順番を、2番目から順に決定する。更に、選択順決定部112は、選択された複数の部品のうちの、選択順が最後の部品に外接する四角形の4辺における、線状軌跡と最初に交差する1辺の順番を最後に決定する。
 例えば、操作受付部111が図3の上段に示した線状軌跡L1を入力する選択操作を受け付けた場合、選択順決定部112は、部品Aの下辺、部品Bの上辺、部品Bの左辺、部品Cの上辺の順を、辺の選択順として決定する。このように決定された辺の選択順を、図3の下段において、丸で囲った数字で示す。
 或いは、操作受付部111が図4の上段に示した線状軌跡L2を入力する選択操作を受け付けた場合、選択順決定部112は、部品Cの上辺、部品Bの下辺、部品Bの上辺、部品Dの左辺の順を、辺の選択順として決定する。このように決定された辺の選択順を、図4の下段において、丸で囲った数字で示す。
 (2)操作受付部111により矩形領域を入力する選択操作を受け付けた場合、選択順決定部112は、選択された複数の部品のうちの、選択順が連続する2つの部品の組のそれぞれに対して、選択順が前の部品に外接する四角形のいずれか1辺と、選択順が後の部品に外接する四角形のいずれか1辺と、の組のうちの、辺同士の距離が最も近い組を選択する。そして、選択順決定部112は、選択順が連続する2つの部品の組のそれぞれから選択した組の2辺に対して、選択順が前の部品の辺、選択順が後の部品の辺の順に、辺の選択順を決定する。
 ここで、辺同士の距離は、一例として、一方の辺の中点と他方の辺の中点との間のユークリッド距離である。距離が等しい複数の組が存在する場合、選択順決定部112は、予め決められたルールに従って、距離が等しい複数の組のうちからいずれかの組を選択する。具体的には、矩形領域が縦長の形状である場合、距離が等しい複数の組のうちの、選択順が早い部品側の辺の中点と矩形領域の始点との間で縦方向座標の差の絶対値が小さい組を選択する。それでも距離が等しい複数の組が存在する場合、選択順決定部112は、その複数の組のうちの、選択順が早い部品側の辺の中点と矩形領域の始点との間で横方向座標の差の絶対値が小さい組を選択する。一方で、矩形領域が横長の形状である場合、距離が等しい複数の組のうちの、選択順が早い部品側の辺の中点と矩形領域の始点との間で横方向座標の差の絶対値が小さい組を選択する。それでも距離が等しい複数の組が存在する場合、選択順決定部112は、その複数の組のうちの、選択順が早い部品側の辺の中点と矩形領域の始点との間で縦方向座標の差の絶対値が小さい組を選択する。
 例えば、操作受付部111が図5の上段に示した矩形領域R1を入力する選択操作を受け付けた場合、選択順決定部112は、部品Aの下辺、部品Bの上辺、部品Bの下辺、部品Cの上辺の順を、辺の選択順として決定する。このように決定された辺の選択順を、図5の下段において、丸で囲った数字で示す。
 或いは、操作受付部111が図6の上段に示した矩形領域R2を入力する選択操作を受け付けた場合、選択順決定部112は、部品Cの上辺、部品Bの下辺、部品Bの右辺、部品Eの左辺の順を、辺の選択順として決定する。このように決定された辺の選択順を、図6の下段において、丸で囲った数字で示す。
 なお、部品に外接する四角形は、図2~図6に示したように部品の形状が長方形状である場合には、部品の外周を形成する辺と一致する。そのため、上記及び以降の記載における「部品Aの下辺」、「部品Bの上辺」等の表現は、「部品Aに外接する四角形の下辺」、「部品Bに外接する四角形の上辺」と同じ意味である。これに対して、例えば図7に示すように、画面に表示される複数の部品の形状は、長方形状以外であっても良い。部品の形状が長方形状以外である場合、部品に外接する四角形は、図7の下段において破線で示すように、部品の外周よりも外側に位置する。この場合、選択順決定部112は、このような部品の外周よりも外側に位置する仮想的な四角形の辺に対して、辺の選択順を決定する。
 以下では、理解を容易にするため、部品の形状が長方形状であると仮定する。そのため、「部品の辺」等の表現は、「部品に外接する四角形の辺」と言い換えても良い。また、長方形状以外の部品に対しても、「部品の辺」等の表現を「部品に外接する四角形の辺」と言い換えることで同様に説明することができる。
 このようにして部品及び辺の選択順を決定すると、選択順決定部112は、決定した選択順を選択順情報121に保存する。選択順情報121は、選択順決定部112により決定された選択順を一時的に保持するデータである。
 具体的には図8に示すように、選択順情報121は、部品の選択順と辺の選択順とを定める。一例として、選択順情報121は、部品A、部品B、部品Cの順で、部品の選択順を保持しており、部品Aの下辺、部品Bの上辺、部品Bの左辺、部品Cの上辺の順で、辺の選択順を保持している。
 <部品の親子関係の設定>
 図1に戻って、親子関係設定部113は、選択順決定部112により決定された選択順に基づいて、選択された複数の部品の間に、親子関係を設定する。ここで、親子関係は、複数の部品の間に設定される従属関係を意味する。一般的なグループ化では複数の部品間の関係は同等であるが、親子関係では複数の部品間に従属関係が設定される。複数の部品の間に親子関係を設定することにより、親部品の設定の変更に応じて子部品の設定が自動的に変更されるというように、高度な部品操作を行うことができる。
 より詳細には、親子関係設定部113は、選択された複数の部品に対して、選択順が前の部品を親部品とし、選択順が後の部品を子部品とする親子関係を設定する。このとき、選択された複数の部品が2つの部品のみである場合、親子関係設定部113は、選択された2つの部品の組合せに対して、選択順が前の部品を親部品とし、選択順が後の部品を子部品とする親子関係を設定する。一方で、選択された複数の部品が少なくとも3つの部品である場合、親子関係設定部113は、それぞれが、選択された少なくとも3つの部品のうちの、選択順決定部112により決定された選択順が連続する2つの部品の組合せである、複数の組合せのそれぞれに対して、選択順が前の部品を親部品とし、選択順が後の部品を子部品とする親子関係を設定する。
 例えば、図3、図5、図7に示したように、選択順決定部112により決定された選択順が部品A、部品B、部品Cの順である場合、親子関係設定部113は、第1に、部品Aと部品Bとの組合せに対して、部品Aを親部品とし、部品Bを子部品とする親子関係を設定する。そして、親子関係設定部113は、第2に、部品Bと部品Cとの組合せに対して、部品Bを親部品とし、部品Cを子部品とする親子関係を設定する。
 或いは、図4に示したように、選択順決定部112により決定された選択順が部品C、部品B、部品Dの順である場合、親子関係設定部113は、第1に、部品Cと部品Bとのの組合せに対して、部品Cを親部品とし、部品Bを子部品とする親子関係を設定する。そして、親子関係設定部113は、第2に、部品Bと部品Dとの組合せに対して、部品Bを親部品とし、部品Dを子部品とする親子関係を設定する。
 また、図6に示したように、選択順決定部112により決定された選択順が部品C、部品B、部品Eの順である場合、親子関係設定部113は、第1に、部品Cと部品Bとの組合せに対して、部品Cを親部品とし、部品Bを子部品とする親子関係を設定する。そして、親子関係設定部113は、第2に、部品Bと部品Eとの組合せに対して、部品Bを親部品とし、部品Eを子部品とする親子関係を設定する。
 <辺の親子関係の設定>
 このような部品の親子関係に加えて、親子関係設定部113は、辺の親子関係を更に設定する。ここで、辺の親子関係は、親子関係が設定された2つの部品の配置上における、辺同士の対応関係に相当する。親部品の1辺と子部品の1辺との間に親子関係が設定された場合、その親部品とその子部品は、これらを含む複数の部品のレイアウトにおいて、親子関係が設定された辺同士が向かい合うように、又は、親子関係が設定された辺同士が接続するように、配置される。
 例えば、各部品が部屋に配置される机を表している場合、親子関係が設定された辺同士が向かい合うように、親子関係が設定された部品同士を並べる。或いは、各部品が製品を組み立てるための個別パーツを表している場合、親子関係が設定された辺同士が繋ぎ合わされるように、親子関係が設定された部品同士を組み合わせる。
 親子関係設定部113は、親子関係が設定された複数の組合せのそれぞれに対して、親部品に外接する四角形の1辺と、子部品に外接する四角形の1辺と、の間に親子関係を設定する。より詳細には、親子関係設定部113は、選択順決定部112により決定された辺の選択順に基づいて、選択順が連続し、且つ、選択順が前の辺が親部品側であって選択順が後の辺が子部品側である2つの辺の組合せに対して、選択順が前の辺を親とし、選択順が後の辺を子とする親子関係を設定する。
 (1)操作受付部111により線状軌跡を入力する選択操作を受け付けた場合、親子関係設定部113は、親子関係が設定された2つの部品の組合せのそれぞれに対して、親部品に外接する四角形において線状軌跡と最後に交差する1辺と、子部品に外接する四角形において線状軌跡と最初に交差する1辺と、の間に親子関係を設定する。
 例えば、図3に示したように、選択順決定部112により決定された辺の選択順が部品Aの下辺、部品Bの上辺、部品Bの左辺、部品Cの上辺の順である場合、親子関係設定部113は、第1に、部品Aの下辺を親とし、部品Bの上辺を子とする辺の親子関係を設定する。そして、親子関係設定部113は、第2に、部品Bの左辺を親とし、部品Cの上辺を子とする辺の親子関係を設定する。
 或いは、図4に示したように、選択順決定部112により決定された辺の選択順が部品Cの上辺、部品Bの下辺、部品Bの上辺、部品Dの左辺の順である場合、親子関係設定部113は、第1に、部品Cの上辺を親とし、部品Bの下辺を子とする辺の親子関係を設定する。そして、親子関係設定部113は、第2に、部品Bの上辺を親とし、部品Dの左辺を子とする辺の親子関係を設定する。
 (2)操作受付部111により矩形領域を入力する選択操作を受け付けた場合、親子関係設定部113は、親子関係が設定された2つの部品の組合せのそれぞれに対して、親部品に外接する四角形のいずれか1辺と、子部品に外接する四角形のいずれか1辺と、の組合せのうちの、辺同士の距離が最も近い組合せに対して親子関係を設定する。
 例えば、図5に示したように、選択順決定部112により決定された辺の選択順が部品Aの下辺、部品Bの上辺、部品Bの下辺、部品Cの上辺の順である場合、親子関係設定部113は、第1に、部品Aの下辺を親とし、部品Bの上辺を子とする辺の親子関係を設定する。そして、親子関係設定部113は、第2に、部品Bの下辺を親とし、部品Cの上辺を子とする辺の親子関係を設定する。
 或いは、図6に示したように、選択順決定部112により決定された辺の選択順が部品Cの上辺、部品Bの下辺、部品Bの右辺、部品Eの左辺の順である場合、親子関係設定部113は、第1に、部品Cの上辺を親とし、部品Bの下辺を子とする辺の親子関係を設定する。そして、親子関係設定部113は、第2に、部品Bの右辺を親とし、部品Eの左辺を子とする辺の親子関係を設定する。
 なお、図3~図7の下段において、図3~図7の上段のように複数の部品が選択された場合に設定される親子関係を、親部品から子部品に向かう矢印で示す。このように、親子関係設定部113は、部品の親子関係を示す記号として、親部品から子部品に向かう矢印を画面に表示する。このとき、親子関係設定部113は、親部品から子部品に向かう矢印を、親子関係が設定された一対の辺の中点同士を接続するように表示する。なお、矢印は親子関係を示す記号の一例であって、矢印以外の記号で親子関係を示しても良い。
 このように、親子関係設定部113は、選択順が連続する2つの部品に対して親子関係を設定する処理を、選択操作により選択された3つ以上の部品に含まれる、選択順が連続する2つの部品の組のそれぞれに対して実行する。更に、親子関係設定部113は、親子関係が設定された部品の辺に対しても親子関係を設定する。親子関係設定部113により親子関係が設定された部品群を、以下では、「親子関係設定部品」と称する。
 このようにして部品及び辺の親子関係を設定すると、親子関係設定部113は、設定した親子関係を示す情報を、親子関係情報122に保存する。親子関係情報122は、親子関係設定部113により部品及び辺の間に設定された親子関係を保持するデータである。
 親子関係情報122は、親子関係が設定された各部品に対する設定の変更を容易にするため、個別の部品で別々に保持されず、親子関係設定部品で一括して保持される。親子関係情報122で保持される設定は、親部品から子部品へと再帰的に適用される。
 具体的には図9に示すように、親子関係情報122は、部品リストと、ルート部品と、辺リストと、設定リストと、の各情報を有する。部品リストは、選択順情報121に保持された複数の部品の情報を、選択順情報121と同じ選択順で有する。辺リストは、選択順情報121に保持された複数の辺の情報を、選択順情報121と同じ選択順で有する。このように、親子関係情報122は、親子関係が設定された部品及び辺に対する参照を、選択順決定部112により決定された選択順に従って保持している。
 ルート部品は、親子関係が設定された複数の部品のうちの、親部品を持たない部品であって、親子関係の最も上位の部品に相当する。例えば、選択順決定部112により決定された部品の選択順が部品A、部品B、部品Cの順である場合、ルート部品は、部品Aである。親子関係設定部113は、親子関係が設定された複数の部品のうちの最も上位の部品を、ルート部品と設定する。
 設定リストは、親子関係が設定された部品に対して再帰的に適用される設定を定める。具体的には、設定リストは、設定と、設定値と、順方向オフセットと、の各情報を保持する。
 設定は、部品の配置、整列及び属性に関する情報である。ここで、部品の配置は、例えば、画面内における部品のX座標、Y座標等である。部品の整列は、例えば、画面内における部品の幅、部品の高さ、隣り合う部品間の間隔等である。部品の属性は、例えば、部品の塗り潰し色、部品の線幅、部品に関する文字列、メモリアドレス等である。部品の配置と整列と属性とをまとめて、「設定」と称する。図9の例では、設定リストは、設定として、部品の塗り潰し色と、部品のY座標と、の情報を保持する。
 設定値は、ルート部品に対して設定を適用する際の具体的な値である。順方向オフセットは、子部品の設定値を導出するために、親部品の設定値に加算される値である。順方向オフセットは、複数の部品を一定の間隔を空けて整列させたり、複数の部品に対して連続した値を設定したりするために使用される。図9の例では、設定リストは、塗り潰し色の順方向オフセットとして、RGB(Red, Green, Blue)の輝度値を保持しており、Y座標の順方向オフセットとして、親部品と子部品との間のY座標の差分に相当する値を保持している。ユーザは、操作部13を操作して、設定リストにおける各設定の設定値と順方向オフセットとを入力することができる。
 <設定の適用>
 設定適用部114は、親子関係設定部113により親子関係が設定された複数の組合せのそれぞれに対して、親部品の設定を基準とする設定を子部品の設定に適用する。ユーザは、操作部13を操作して、親子関係情報122の操作画面から設定を適用する操作を入力する。この操作に応答して、設定適用部114は、親子関係が設定された部品群に対して、親子関係情報122の設定リストに定められた設定を再帰的に適用する。
 具体的に説明すると、設定適用部114は、親子関係が設定された複数の組合せのそれぞれに対して、子部品の設定値を、親部品の設定値にオフセットを加算した値に設定する。第1に、設定適用部114は、ルート部品に対して、設定リストに定められている各設定の設定値を適用する。第2に、設定適用部114は、ルート部品を親とする子部品に対して、ルート部品に適用された各設定の設定値に順方向オフセットを加算した値を適用する。第3に、設定適用部114は、設定が適用された上記の子部品を親とする子部品に対して、各設定の設定値に更に順方向オフセットを加算した値を適用する。設定適用部114は、このような処理を繰り返すことで、親子関係が設定された2つの部品の組合せのそれぞれに対して、再帰的に設定を適用する。
 具体的に図10を参照して、設定適用部114により複数の部品に設定が適用される例を示す。図10の上段のように、親子関係が設定された部品A~Cに対して独立に設定がされている状態において、設定適用部114が図9に示した設定リストの設定を適用した場合、部品A~Cに対して図10の下段のように設定が適用される。
 具体的に説明すると、設定適用部114は、ルート部品である部品Aの塗り潰し色を青に設定し、部品AのY座標を10に設定する。次に、設定適用部114は、塗り潰し色の順方向オフセットが無く、Y座標の順方向オフセットが30であるという設定に従って、部品Aの子である部品Bの塗り潰し色を青に設定し、部品BのY座標を部品AのY座標に30を加算した40に設定する。更に、設定適用部114は、部品Bの子である部品Cの塗り潰し色を青に設定し、部品CのY座標を部品BのY座標に30を加算した70に設定する。これにより、複数の部品に対して一定の規則に従った設定の変更を、少ない手順で行うことができる。
 次に、作画支援装置10において実行される作画支援処理の流れについて、図11及び図12に示すフローチャートを参照して説明する。図11に示す親子関係情報処理、及び、図12に示す設定適用処理は、作画支援方法の一例である。
 図11に示す親子関係設定処理は、ユーザが、作画支援装置10に予めインストールされた作画ソフトを起動させて、表示部14の画面に複数の部品を表示させた状態において、開始される。
 親子関係設定処理を開始すると、制御部11は、操作受付部111として機能し、画面に表示された複数の部品のうちから、選択対象となる複数の部品を選択する選択操作を受け付ける(ステップS1)。具体的には、制御部11は、第1の選択方法として、図3、図4又は図7に示したように、選択対象となる複数の部品を横切る位置に線状軌跡L1,L2を入力する選択操作を受け付ける。或いは、制御部11は、第2の選択方法として、図5又は図6に示したように、選択対象となる複数の部品と重なる位置に矩形領域R1,R2を入力する選択操作を受け付ける。
 選択操作を受け付けると、制御部11は、選択順決定部112として機能し、選択された複数の部品の選択順を決定する(ステップS2)。具体的に説明すると、制御部11は、入力された線状軌跡が横切る順に、又は、入力された矩形領域の始点とアスペクト比とに基づいて、選択された複数の部品の選択順を決定する。
 部品の選択順を決定すると、制御部11は、辺の選択順を決定する(ステップS3)。具体的に説明すると、制御部11は、予め定められた基準に従って、選択順が決定された各部品に外接する四角形の4辺のうちから、辺の選択順を決定する。
 部品及び辺の選択順を決定すると、制御部11は、選択順情報121を更新する(ステップS4)。具体的に説明すると、制御部11は、決定した部品及び辺の選択順を、選択順情報121に保存する。
 選択順情報121を更新すると、制御部11は、親子関係設定部113として機能し、部品の親子関係を設定する(ステップS5)。具体的に説明すると、制御部11は、ステップS1で選択された複数の部品のうちの、ステップS2で決定された選択順が連続する2つの部品の組合せのそれぞれに対して、選択順が前の部品を親部品とし、選択順が後の部品を子部品とする親子関係を設定する。
 部品の親子関係を設定すると、制御部11は、辺の親子関係を設定する(ステップS6)。具体的に説明すると、制御部11は、親子関係が設定された2つの部品の組合せのそれぞれに対して、親部品に外接する四角形の1辺を親とし、子部品に外接する四角形の1辺を子とする親子関係を設定する。
 部品及び辺の親子関係を設定すると、制御部11は、親子関係情報122を更新する(ステップS7)。具体的に説明すると、制御部11は、設定した部品及び辺の親子関係に基づいて、親子関係情報122における部品リスト、辺リスト及びルート部品の情報を更新する。
 親子関係情報122を更新すると、制御部11は、部品及び辺の選択順をメモリから解放する(ステップS8)。以上により、図11に示した親子関係設定処理は終了する。
 図12に示す設定適用処理は、図11に示した親子関係設定処理により親子関係が設定された複数の部品に対して、設定リストの設定を適用する操作を入力した場合に、開始する。図12に示す設定適用処理において、制御部11は、設定適用部114として機能する。
 設定適用処理を開始すると、制御部11は、親子関係情報122における設定リストから設定を1つ取得する(ステップS11)。図9に示した親子関係情報122の例では、制御部11は、設定リストに定められている塗り潰し色、Y座標、…等の設定のうちから1つを取得する。
 設定を1つ取得すると、制御部11は、取得した設定の設定値をルート部品に適用する(ステップS12)。図9の例において塗り潰し色の設定を取得した場合、制御部11は、ルート部品である部品Aの塗り潰し色を、設定値である「青」を設定する。
 設定値をルート部品に適用すると、制御部11は、ルート部品に適用した設定値に、取得された設定に定められている順方向オフセットを加算する(ステップS13)。
 設定値に順方向オフセットを加算すると、制御部11は、順方向オフセットが加算された後の設定値を、部品リストにおいて順方向に存在する次の部品に適用する(ステップS14)。図9の例では、ルート部品である部品Aの順方向に部品Bと部品Cが存在する。そのため、制御部11は、順方向オフセットが加算された後の設定値を、ルート部品の次の部品である部品Bに適用する。
 次に、制御部11は、部品リストにおいて順方向に部品が更に存在するか否かを判定する(ステップS15)。順方向に部品が更に存在する場合(ステップS15;YES)、制御部11は、処理をステップS13に戻す。そして、制御部11は、現在の設定値に順方向オフセットを更に加算し、加算後の設定値を、部品リストにおいて順方向に存在する次の部品に適用する。このようにして、制御部11は、部品リストにおける順方向に存在する各部品に対して、順方向オフセットを順に加算した設定値を適用する。
 これに対して、順方向に部品が更に存在しない場合(ステップS15;NO)、制御部11は、設定リストに未適用の設定が残っているか否かを判定する(ステップS16)。未適用の設定が残っている場合(ステップS16;YES)、制御部11は、処理をステップS11に戻し、設定リストから未適用の設定を1つ取得する。そして、制御部11は、ステップS12~S15の処理を実行して、取得した設定の設定値を、親子関係が設定された複数の部品のそれぞれに対して適用する。このようにして、制御部11は、設定リストに含まれる各設定の設定値を、親子関係が設定された複数の部品のそれぞれに対して適用する。
 未適用の設定が残っていない場合(ステップS16;NO)、制御部11は、図12に示した設定適用処理を終了する。
 以上説明したように、実施の形態1に係る作画支援装置10は、画面に表示された複数の部品を選択する選択操作とその複数の部品の位置関係とに基づいて、複数の部品の選択順を決定し、複数の部品に対して、選択順が前の部品を親部品とし、選択順が後の部品を子部品とする親子関係を設定する。このように、画面における複数の部品の位置関係に基づいて選択順を決定するため、線状軌跡又は矩形領域の入力という直感的で容易な操作で複数の部品の間に親子関係を設定することができる。その結果、複数の部品の設定に要する手間を抑制することができる。特に、少なくとも3つの部品に対して親子関係を設定する場合、一度の操作で多段階の親子関係を設定することができるため、ユーザは、1組ずつ部品を選択して親子関係を設定する処理を繰り返すという手間が不要となる。そのため、部品の数が多い場合におけるユーザの手間を大きく抑制することができる。
 また、実施の形態1に係る作画支援装置10は、親部品の設定を基準とする設定を子部品の設定に適用する。これにより、親子関係が設定された複数の部品に対して、設定及び設定の変更を一括して再帰的に行うことができるため、複数の部品の設定に要する手間を抑制することができる。特に、部品の数が多い場合におけるユーザの手間を大きく抑制することができる。
 (実施の形態2)
 次に、実施の形態2について説明する。実施の形態1と同様の構成及び機能については適宜説明を省略する。
 実施の形態2に係る作画支援装置10は、親子関係が設定済みの部品群に対して、更に別の部品との間に親子関係を設定する。言い換えると、実施の形態2に係る作画支援装置10は、親子関係を多重に設定することができる。
 図13の上段に、親子関係設定部113により既に親子関係が設定された部品群である部品A,Bと、これらとは別の部品Cとが、表示部14の画面に表示されている例を示す。このような画面において、ユーザは、部品A~Cを選択する新たな選択操作の一例として、部品Cの右下方から部品Aの左上方にわたる矩形領域R3を描く選択操作を入力する。なお、新たな選択操作は、矩形領域R3を描く操作に限らず、線状軌跡を描く操作であっても同様である。この場合、実施の形態2において、部品A,Bの部品群は、親子関係設定部品ABという1つの部品と同等に扱われる。
 具体的に説明すると、図13の上段に示すように、ユーザが、親子関係が設定された部品A,Bの部品群である親子関係設定部品ABと、部品Cと、を選択する新たな選択操作を入力した場合、操作受付部111は、その新たな選択操作を受け付ける。
 選択順決定部112は、操作受付部111により受け付けられた新たな選択操作に基づいて、親子関係設定部品ABと部品Cとの選択順を決定する。図13の例では、選択順決定部112は、矩形領域R3の始点に近い部品Cの選択順を1番目、親子関係設定部品ABの選択順を2番目に決定する。
 親子関係設定部113は、選択順決定部112により決定された選択順に基づいて、親子関係設定部品ABと部品Cとの間に新たな親子関係を設定する。図13の例では、親子関係設定部113は、部品Cを親部品とし、親子関係設定部品ABを子部品とする親子関係を設定する。これにより、親子関係設定部品ABと部品Cとを部品リストにもつ親子関係設定部品ABCが生成される。
 また、親子関係設定部113は、親子関係設定部品ABに外接する四角形の1辺と、部品Cに外接する四角形の1辺と、の間に、辺の親子関係を設定する。ここで、親子関係設定部品ABに外接する四角形は、図13の下段において太い実線で示すように、部品Aと部品Bとを包含する最小の四角形に相当する。
 設定適用部114は、部品Cを親部品とし、親子関係設定部品ABを子部品とする親子関係が設定された場合、親部品である部品Cの設定を基準とする設定を、子部品である親子関係設定部品ABの設定に適用する。具体的には、設定適用部114は、実施の形態1と同様に、親子関係設定部品ABの設定値を、部品Cの設定値に順方向オフセットを加算した値に設定する。その際、設定適用部114は、親子関係設定部品ABを、親子関係設定部品ABに外接する四角形の形状を有する1つの部品として扱って、親子関係設定部品ABの設定を行う。
 このように、実施の形態2では、親子関係が設定済みの部品群を1つの部品として扱って、更に別の部品との間で親子関係を設定することができる。これにより、例えば親子関係設定部品ABを部品リストにもつより上位の親子関係設定部品ABCを生成した場合、親子関係設定部品ABの設定を、親子関係設定部品ABCの設定から行うことができる。
 (実施の形態3)
 次に、実施の形態3について説明する。実施の形態1,2と同様の構成及び機能については適宜説明を省略する。
 実施の形態3に係る作画支援装置10は、ユーザの操作に応じて、親子関係が設定済みの一対の辺のうちの少なくとも一方の辺を、同じ部品における別の辺に変更する。
 図14の上段に、親子関係設定部113により親子関係が設定済みの部品群である部品A~Cが表示部14の画面に表示されている例を示す。より詳細には、部品Aの下辺と部品Bの上辺との間に辺の親子関係が設定されており、部品Bの下辺と部品Cの上辺との間に辺の親子関係が設定されている。
 このような画面において、操作受付部111は、親子関係設定部113により親子関係が設定された一対の辺のうちの一方の辺を、同じ部品における別の辺に変更する変更操作を受け付ける。具体的に説明すると、ユーザは、ドラッグ操作により、画面に表示された、親子関係を示す記号の一例である矢印の一端を、同じ部品における別の辺に移動させることができる。これにより、ユーザは、親子関係が設定済みの一対の辺のうちの一方の辺を別の辺に変更する変更操作を入力することができる。
 親子関係設定部113は、操作受付部111がこのような変更操作を受け付けた場合、一対の辺の間に設定された親子関係を、同じ部品における別の辺と、その一対の辺のうちの他方の辺と、の間の親子関係に変更する。
 例えば、図14の上段において破線で示すように、ユーザは、部品Aの下辺と部品Bの上辺とを接続する矢印の一端を、一対の辺のうちの一方の辺である部品Aの下辺から、同じ部品Aにおける別の辺である右辺に移動させる。この場合、親子関係設定部113は、図14の下段に示すように、部品A,B間の一対の辺に設定された辺の親子関係を、部品Aの右辺と、一対の辺のうちの他方の辺である部品Bの上辺との間の親子関係に変更する。
 このように、実施の形態3では、親部品と子部品との間で設定済みの辺の親子関係を、親部品の同じ又は異なる辺と、子部品の同じ又は異なる辺と、の間の親子関係に変更することができる。これにより、親子関係の設定をやり直すことなく、簡単な操作により辺の親子関係を変更することができる。
 (実施の形態4)
 次に、実施の形態4について説明する。実施の形態1~3と同様の構成及び機能については適宜説明を省略する。
 実施の形態4に係る作画支援装置10は、ユーザの操作に応じて、親子関係が設定済みの一対の部品のうちの少なくとも一方の部品を別の部品に変更する。
 図15の上段に、親子関係設定部113により親子関係が設定済みの部品群である部品A,Bと親子関係が未設定である部品Cとが、表示部14の画面に表示されている例を示す。より詳細には、部品Aの下辺と部品Bの上辺との間に辺の親子関係が設定されている。
 このような画面において、操作受付部111は、親子関係設定部113により親子関係が設定された一対の部品のうちの一方の部品を、画面に表示されたその一対の部品とは別の部品に変更する変更操作を受け付ける。具体的に説明すると、ユーザは、ドラッグ操作により、画面に表示された、親子関係を示す記号の一例である矢印の一端を、親子関係が未設定の別の部品に移動させることができる。これにより、ユーザは、親子関係が設定済みの一対の部品のうちの一方の部品を別の部品に変更する変更操作を入力することができる。
 親子関係設定部113は、操作受付部111がこのような変更操作を受け付けた場合、親子関係が設定済みの一対の部品の間に設定された親子関係を、その一対の部品のうちの他方の部品と、親子関係が未設定である別の部品と、の間の親子関係に変更する。
 例えば、図15の上段において破線で示すように、ユーザは、親子関係が設定済みの一対の部品A,Bの間を接続する矢印の一端を、一対の部品のうちの一方の部品である部品Bの上辺から、親子関係が未設定である別の部品Cの左辺に移動させる。この場合、親子関係設定部113は、図15の下段に示すように、部品A,B間に設定された部品の親子関係を、一対の部品のうちの他方の部品である部品Aを親部品とし、部品Cを子部品とする親子関係に変更する。そして、親子関係設定部113は、部品A,B間に設定された辺の親子関係を、部品Aの下辺を親とし、部品Cの左辺を子とする親子関係に変更する。
 このような親子関係の変更に加えて、親子関係設定部113は、上記の別の部品と、上記の一対の部品のうちの一方の部品と、の間に親子関係を更に設定する。具体的には、図15の下段に示すように、親子関係設定部113は、別の部品である部品Cを親部品とし、一対の部品のうちの一方の部品である部品Bを子部品とする親子関係を設定する。そして、親子関係設定部113は、部品Cの右辺を親とし、部品Bの下辺を子とする親子関係を設定する。
 ここで、部品A,C間における辺の親子関係の子が部品Cの左辺であるため、親子関係設定部113は、部品C,B間における辺の親子関係の親を、その対辺である部品Cの右辺に設定する。しかしながら、これは例示であって、部品C,B間における辺の親子関係の親となる辺は、どのような基準で設定されても良い。
 このように、実施の形態4では、親子関係が設定済みの一対の部品における親部品又は子部品を変更することができる。これにより、親子関係の設定をやり直すことなく、簡単な操作により部品の親子関係を変更することができる。
 (実施の形態5)
 次に、実施の形態5について説明する。実施の形態1~4と同様の構成及び機能については適宜説明を省略する。
 実施の形態5に係る作画支援装置10は、親子関係設定部113により親子関係が設定された部品群に対して設定適用部114により設定が適用された後で、その部品群の構成部品を再選択することができる。
 図16に、親子関係設定部113により親子関係が設定済みの部品群である部品A~Cと親子関係が未設定である部品Dとが、表示部14の画面に表示されている例を示す。より詳細には、設定適用部114により、部品A~Cに対して、ルート部品である部品Aの塗り潰し色が(0、0、0)に設定されており、順方向オフセットが(64、0、0)に設定されている。
 このような画面において、ユーザは、部品A~Cの部品群の構成部品を再選択する再選択操作を入力することができる。これにより、既に親子関係が設定され、設定が適用済みの部品群の構成部品又はその選択順を変更することができる。
 一例として、ユーザは、親子関係設定部品A~Cの操作画面から「部品の再選択」-「矩形選択」を選択する。そして、ユーザは、図16の上段に示すように、部品A~Cの部品群の構成部品として、部品A~Dを再選択する再選択操作を入力する。例えば、ユーザは、部品Dの右下方から部品Aの左上方にわたる矩形領域R4を描く選択操作を入力する。なお、再選択操作は、矩形領域R4を描く操作に限らず、線状軌跡を描く操作であっても同様である。
 ユーザが部品A~Dを選択する再選択操作を入力した場合、操作受付部111は、その再選択操作を受け付ける。選択順決定部112は、操作受付部111により受け付けられた再選択操作に基づいて、部品A~Dの選択順を決定する。図16の例では、選択順決定部112は、矩形領域R4の始点から近い順に、部品D、部品C、部品B、部品Aの順に選択順を決定する。
 親子関係設定部113は、選択順決定部112により決定された選択順に基づいて、部品D,C間と部品C,B間と部品B,A間とのそれぞれに対して、親子関係を設定する。このとき、親子関係設定部113は、選択順が1番目である部品Dをルート部品に設定する。これにより、部品A~Dを部品リストにもつ親子関係設定部品A~Dが生成される。
 設定適用部114は、再選択操作により構成部品が再選択された後の部品A~Dの部品群に対して、再選択操作よりも前の部品A~Cの部品群に適用された設定を再適用する。具体的には、図16の下段に示すように、設定適用部114は、ルート部品である部品Dの塗り潰し色を(0、0、0)に設定する。そして、設定適用部114は、部品C、部品B及び部品Aの塗り潰し色を、順方向オフセットの設定値(64、0、0)に従って設定する。
 このように、実施の形態5に係る作画支援装置10は、親子関係が設定済みである部品群の構成部品の再選択を受け付け、再選択操作により構成部品が再選択された後の部品群に対して、再選択操作よりも前と同じ設定を再適用する。これにより、ユーザは、設定値、オフセット等の設定を再入力する必要がなく、簡単な操作で親子関係を設定する部品及び辺を再選択することができる。
 (実施の形態6)
 次に、実施の形態6について説明する。実施の形態1~5と同様の構成及び機能については適宜説明を省略する。
 実施の形態6に係る作画支援装置10は、親子関係が設定された複数の部品に対して、親子関係を途中から、又は、親子関係の全てを逆転させる。
 図17の上段に、親子関係設定部113により親子関係が設定済みの部品群である部品A~Cが表示部14の画面に表示されている例を示す。より詳細には、部品Aの下辺と部品Bの上辺との間に辺の親子関係が設定されており、部品Bの下辺と部品Cの上辺との間に辺の親子関係が設定されている。
 このような画面において、操作受付部111は、親子関係設定部113により親子関係が設定された複数の組合せのうちの少なくとも1つの組合せにおける親子関係を逆転させる逆転操作を受け付ける。
 ユーザは、ドラッグ操作により、画面に表示された、親子関係を示す記号の一例である矢印の始点と終点とを逆転させることができる。例えば、ユーザは、部品Aから部品Bに向かって延びる矢印を逆転させて、部品Bから部品Aに向かって延びる矢印に変更する。或いは、ユーザは、親子関係設定部品ABCの操作画面を開いて、親子関係設定部品ABCのルート部品を部品Aから部品Bに変更することで、部品Aと部品Bとの組合せにおける親子関係を逆転させても良い。このようにして、ユーザは、親子関係が設定済みの少なくとも1つの組合せにおける親子関係を逆転させる逆転操作を入力することができる。なお、より詳細には、以下で説明するように親子関係の逆転はルート部品が変更されることにより行われるため、親子関係を逆転させる少なくとも1つの組合せにはルート部品が含まれている必要がある。
 親子関係設定部113は、ユーザの操作に応じて、親子関係が設定された複数の組合せのうちの少なくとも1つの組合せにおける親子関係を逆転させる。例えば、親部品且つルート部品である部品Aと子部品である部品Bとの組合せにおける親子関係を逆転させる逆転操作を受け付けた場合、親子関係設定部113は、図17の下段に示すように、部品Aと部品Bとの組合せにおける親子関係を、部品Bを親部品且つルート部品とし、部品Aを子部品とする親子関係に変更する。
 親子関係設定部113は、親子関係を変更すると、親子関係情報122を更新する。図18に、部品AB間の親子関係が逆転した場合における親子関係情報122の例を示す。図18の例では、部品リストでは、当初の選択順である部品A、部品B、部品Cのまま変更されていないのに対して、部品AB間の親子関係が逆転したことに伴って、ルート部品が部品Bに変更されている。
 更に、親子関係情報122は、設定リストにおいて、順方向オフセットに加えて、逆方向オフセットの情報を保持する。ここで、逆方向オフセットは、第1のオフセットである順方向オフセットとは別に用意された第2のオフセットであって、親子関係が逆転された部品間において使用される。
 一例として、図18に示すように、逆方向オフセットは、順方向オフセットの値に-1を乗じた値に設定される。しかしながら、逆方向オフセットは、これに限らず、順方向オフセットとは独立してどのような値を設定しても良い。
 より詳細には、順方向オフセットは、部品リストにおいて親部品よりも下に位置する子部品、すなわち選択順決定部112により決定された選択順が親部品よりも後の子部品に対して適用される。これに対して、逆方向オフセットは、部品リストにおいて親部品よりも上に位置する子部品、すなわち選択順決定部112により決定された選択順が親部品よりも前の子部品に対して適用される。
 設定適用部114は、このような逆方向オフセットを含む親子関係情報122に基づいて、親子関係設定部113により親子関係が設定された複数の組合せのそれぞれに対して、親部品の設定を基準とする設定を子部品の設定に適用する。
 具体的に説明すると、設定適用部114は、親子関係が設定された複数の組合せのうちの、逆転操作により親子関係が逆転した少なくとも1つの組合せ以外の組合せに対して、子部品の設定値を、親部品の設定値に順方向オフセットを加算した値に設定する。言い換えると、設定適用部114は、親子関係が逆転していない少なくとも1つの組合せに対して、実施の形態1と同様に、順方向オフセットに基づいて設定を適用する。
 これに対して、設定適用部114は、親子関係が設定された複数の組合せのうちの、逆転操作により親子関係が逆転した少なくとも1つの組合せに対して、子部品の設定値を、親部品の設定値に逆方向オフセットを加算した値に設定する。
 より詳細に、図19を参照して、設定適用部114により実行される設定適用処理の流れを説明する。
 図19に示す設定適用処理は、図11に示した親子関係設定処理により親子関係が設定された複数の部品に対して、設定リストの設定を適用する操作を入力した場合に、開始する。図19に示す設定適用処理において、制御部11は、設定適用部114として機能する。
 設定適用処理を開始すると、制御部11は、実施の形態1において図12を参照して説明したステップS11~S15の処理を実行する。これにより、制御部11は、設定リストから取得した設定に対して、順方向オフセットに基づく設定を適用する処理を実行する。
 ステップS15の後、制御部11は、順方向オフセットが加算された後の設定値を、ステップS12でルート部品に設定した値である初期値に戻す(ステップS21)。
 設定値を初期値に戻すと、制御部11は、ルート部品に適用した設定値に、取得された設定に定められている逆方向オフセットを加算する(ステップS22)。
 設定値に逆方向オフセットを加算すると、制御部11は、逆方向オフセットが加算された後の設定値を、部品リストにおいて逆方向に存在する次の部品に適用する(ステップS23)。図18の例では、ルート部品である部品Bの逆方向に部品Aが存在する。そのため、制御部11は、逆方向オフセットが加算された後の設定値を、ルート部品の次の部品である部品Aに適用する。
 次に、制御部11は、部品リストにおいて逆方向に部品が更に存在するか否かを判定する(ステップS24)。逆方向に部品が更に存在する場合(ステップS24;YES)、制御部11は、処理をステップS22に戻す。そして、制御部11は、現在の設定値に逆方向オフセットを更に加算し、加算後の設定値を、部品リストにおいて逆方向に存在する次の部品に適用する。このようにして、制御部11は、部品リストにおける逆方向に存在する各部品に対して、逆方向オフセットを順に加算した設定値を適用する。
 これに対して、逆方向に部品が更に存在しない場合(ステップS24;NO)、制御部11は、設定リストに未適用の設定が残っているか否かを判定する(ステップS25)。未適用の設定が残っている場合(ステップS25;YES)、制御部11は、処理をステップS11に戻し、設定リストから未適用の設定を1つ取得する。そして、制御部11は、ステップS12~S15、S21~24の処理を実行して、取得した設定の設定値を、親子関係が設定された複数の部品のそれぞれに対して適用する。このようにして、制御部11は、設定リストに含まれる各設定の設定値を、親子関係が設定された複数の部品のそれぞれに対して適用する。
 未適用の設定が残っていない場合(ステップS25;NO)、制御部11は、図19に示した設定適用処理を終了する。
 このように、実施の形態6では、親子関係が設定された複数の部品に対して、親子関係を途中から、又は、親子関係の全てを逆転させる。これにより、ユーザは、親子関係の設定をやり直すことなく、簡単な操作で設定の基準となるルート部品を変更することができる。また、順方向と逆方向とで異なるオフセット値を設定することができるため、設定の柔軟性を高めることができる。
 (変形例)
 以上、実施の形態を説明したが、各実施の形態を組み合わせたり、各実施の形態を適宜、変形、省略したりすることが可能である。
 例えば、上記実施の形態では、親子関係設定部113は、部品同士の親子関係を設定することに加えて、辺同士の親子関係を設定した。しかしながら、親子関係設定部113は、辺同士の親子関係を設定しなくても良い。辺同士の親子関係を設定しなくても、部品同士の親子関係を設定することで、親部品の設定を基準とする設定を子部品の設定に適用することができるため、複数の部品の設定を効率的に編集することができるとの効果を得ることができる。
 上記実施の形態において、図3に示した線状軌跡L1と図4に示した線状軌跡L2は、その始点と終点が部品の外側に位置しており、最初の部品から最後の部品までを完全に横切っていた。しかしながら、選択操作として入力される線状軌跡は、最初の部品の途中から開始し、最後の部品の途中で終了していても良い。言い換えると、線状軌跡が横切る部品は、線状軌跡が完全に横切る部品だけでなく、線状軌跡が部分的に横切る部品を含んでも良い。そして、操作受付部111は、線状軌跡により完全に横切られる部品のみを選択しても良いし、線状軌跡により部分的に横切られる部品も含めて、線状軌跡と重なる位置に存在する全ての部品を選択しても良い。このように、線状軌跡により選択される部品の設定は、適宜変更可能である。
 上記実施の形態において、図5に示した矩形領域R1と図6に示した矩形領域R2は、その始点と終点が部品の外側に位置しており、選択される複数の部品を完全に包含していた。操作受付部111は、このように矩形領域に完全に包含される部品のみを選択し、矩形領域と一部のみが重なる部品を選択対象から除外しても良い。或いは、操作受付部111は、矩形領域に完全に包含される部品だけでなく、矩形領域と一部のみが重なる部品まで含めて選択しても良い。このように、矩形領域により選択される部品の設定は、適宜変更可能である。
 上記実施の形態では、作画支援装置10の制御部11において、CPUがROM又は記憶部12に記憶されたプログラムを実行することによって、操作受付部111、選択順決定部112、親子関係設定部113及び設定適用部114の各部として機能した。しかしながら、制御部11は、専用のハードウェアであってもよい。専用のハードウェアとは、例えば単一回路、複合回路、プログラム化されたプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、又は、これらの組み合わせ等である。制御部11が専用のハードウェアである場合、各部の機能それぞれを個別のハードウェアで実現してもよいし、各部の機能をまとめて単一のハードウェアで実現してもよい。
 また、各部の機能のうち、一部を専用のハードウェアによって実現し、他の一部をソフトウェア又はファームウェアによって実現してもよい。このように、制御部11は、ハードウェア、ソフトウェア、ファームウェア、又は、これらの組み合わせによって、上述の各機能を実現することができる。
 作画支援装置10の動作を規定する動作プログラムを既存のパーソナルコンピュータ、情報端末装置等のコンピュータに適用することで、当該コンピュータを、作画支援装置10として機能させることも可能である。このようなプログラムは、作画支援プログラムの一例である。
 また、このようなプログラムの配布方法は任意であり、例えば、CD-ROM(Compact Disk ROM)、DVD(Digital Versatile Disk)、MO(Magneto Optical Disk)、メモリカード等のコンピュータ読み取り可能な記録媒体に格納して配布してもよいし、インターネット等の通信ネットワークを介して配布してもよい。
 本開示は、本開示の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、この開示を説明するためのものであり、本開示の範囲を限定するものではない。すなわち、本開示の範囲は、実施の形態ではなく、請求の範囲によって示される。そして請求の範囲内及びそれと同等の開示の意義の範囲内で施される様々な変形が、この開示の範囲内とみなされる。
 本開示は、作画を支援する技術に好適に採用され得る。
10 作画支援装置、11 制御部、12 記憶部、13 操作部、14 表示部、15 通信部、111 操作受付部、112 選択順決定部、113 親子関係設定部、114 設定適用部、121 選択順情報、122 親子関係情報、L1,L2 線状軌跡、R1,R2,R3,R4 矩形領域

Claims (18)

  1.  コンピュータを、
     画面に表示された複数の部品を選択する選択操作を受け付ける操作受付手段、
     前記操作受付手段により受け付けられた前記選択操作と、前記画面における前記複数の部品の位置関係と、に基づいて、前記複数の部品の選択順を決定する選択順決定手段、
     前記複数の部品に対して、前記選択順が前の部品を親部品とし、前記選択順が後の部品を子部品とする親子関係を設定する親子関係設定手段、として機能させる、
     作画支援プログラム。
  2.  前記親子関係設定手段は、前記複数の部品が少なくとも3つの部品である場合、それぞれが、前記少なくとも3つの部品のうちの、前記選択順決定手段により決定された前記選択順が連続する2つの部品の組合せである、複数の組合せのそれぞれに対して、前記選択順が前の部品を親部品とし、前記選択順が後の部品を子部品とする親子関係を設定する、
     請求項1に記載の作画支援プログラム。
  3.  前記親子関係設定手段は、前記選択順が前の部品に外接する四角形の1辺と、前記選択順が後の部品に外接する四角形の1辺と、の間に親子関係を更に設定する、
     請求項1又は2に記載の作画支援プログラム。
  4.  前記操作受付手段は、前記選択操作として、前記画面における前記複数の部品を横切る位置に線状軌跡を入力する操作を受け付け、
     前記選択順決定手段は、前記複数の部品のうちの、前記線状軌跡が横切る部品から順に、前記選択順を決定する、
     請求項1から3のいずれか1項に記載の作画支援プログラム。
  5.  前記親子関係設定手段は、前記選択順が前の部品に外接する四角形において前記線状軌跡と最後に交差する1辺と、前記選択順が後の部品に外接する四角形において前記線状軌跡と最初に交差する1辺と、の間に親子関係を更に設定する、
     請求項4に記載の作画支援プログラム。
  6.  前記操作受付手段は、前記選択操作として、前記画面における前記複数の部品と重なる位置に矩形領域を入力する操作を受け付け、
     前記選択順決定手段は、前記複数の部品のうちの、前記矩形領域の始点に近い部品から順に、前記選択順を決定する、
     請求項1から5のいずれか1項に記載の作画支援プログラム。
  7.  前記親子関係設定手段は、前記選択順が前の部品に外接する四角形のいずれか1辺と、前記選択順が後の部品に外接する四角形のいずれか1辺と、の組合せのうちの、辺同士の距離が最も近い組合せに対して親子関係を更に設定する、
     請求項6に記載の作画支援プログラム。
  8.  前記操作受付手段は、前記親子関係設定手段により親子関係が設定された部品群と、前記画面に表示された前記部品群とは別の部品と、を選択する新たな選択操作を受け付け、
     前記選択順決定手段は、前記操作受付手段により受け付けられた前記新たな選択操作に基づいて、前記部品群と前記別の部品との選択順を決定し、
     前記親子関係設定手段は、前記選択順決定手段により決定された前記選択順に基づいて、前記部品群と前記別の部品との間に新たな親子関係を設定する、
     請求項1から7のいずれか1項に記載の作画支援プログラム。
  9.  前記操作受付手段は、前記親子関係設定手段により親子関係が設定された一対の辺のうちの一方の辺を、同じ部品における別の辺に変更する変更操作を受け付け、
     前記親子関係設定手段は、前記操作受付手段が前記変更操作を受け付けた場合、前記一対の辺の間に設定された前記親子関係を、前記別の辺と、前記一対の辺のうちの他方の辺と、の間の親子関係に変更する、
     請求項3、5又は7に記載の作画支援プログラム。
  10.  前記操作受付手段は、前記親子関係設定手段により親子関係が設定された一対の部品のうちの一方の部品を、前記画面に表示された前記一対の部品とは別の部品に変更する変更操作を受け付け、
     前記親子関係設定手段は、前記操作受付手段が前記変更操作を受け付けた場合、前記一対の部品の間に設定された前記親子関係を、前記一対の部品のうちの他方の部品と、前記別の部品と、の間の親子関係に変更する、
     請求項1から9のいずれか1項に記載の作画支援プログラム。
  11.  前記親子関係設定手段は、前記操作受付手段が前記変更操作を受け付けた場合、前記別の部品と、前記一対の部品のうちの前記一方の部品と、の間に親子関係を設定する、
     請求項10に記載の作画支援プログラム。
  12.  前記コンピュータを、
     前記親部品の設定を基準とする設定を前記子部品の設定に適用する設定適用手段、として更に機能させる、
     請求項1から11のいずれか1項に記載の作画支援プログラム。
  13.  前記設定適用手段は、前記子部品の設定値を、前記親部品の設定値にオフセットを加算した値に設定する、
     請求項12に記載の作画支援プログラム。
  14.  前記操作受付手段は、前記親子関係設定手段により親子関係が設定された部品群に対して前記設定適用手段により設定が適用された後で、前記部品群の構成部品を再選択する再選択操作を受け付け、
     前記設定適用手段は、前記再選択操作により前記構成部品が再選択された後の前記部品群に対して、前記設定を再適用する、
     請求項12又は13に記載の作画支援プログラム。
  15.  前記親子関係設定手段は、前記複数の部品が少なくとも3つの部品である場合、それぞれが、前記少なくとも3つの部品のうちの、前記選択順決定手段により決定された前記選択順が連続する2つの部品の組合せである、複数の組合せのそれぞれに対して、前記選択順が前の部品を親部品とし、前記選択順が後の部品を子部品とする親子関係を設定し、
     前記親子関係設定手段は、ユーザの操作に応じて、前記親子関係が設定された前記複数の組合せのうちの少なくとも1つの組合せにおける親子関係を逆転させる、
     請求項12から14のいずれか1項に記載の作画支援プログラム。
  16.  前記設定適用手段は、前記複数の組合せのうちの、前記少なくとも1つの組合せ以外の組合せに対して、前記子部品の設定値を、前記親部品の設定値に第1のオフセットを加算した値に設定し、前記複数の組合せのうちの、前記少なくとも1つの組合せに対して、前記子部品の設定値を、前記親部品の設定値に第2のオフセットを加算した値に設定する、
     請求項15に記載の作画支援プログラム。
  17.  画面に表示された複数の部品を選択する選択操作を受け付ける操作受付手段と、
     前記操作受付手段により受け付けられた前記選択操作と、前記画面における前記複数の部品の位置関係と、に基づいて、前記複数の部品の選択順を決定する選択順決定手段と、
     前記複数の部品に対して、前記選択順が前の部品を親部品とし、前記選択順が後の部品を子部品とする親子関係を設定する親子関係設定手段と、を備える、
     作画支援装置。
  18.  画面に表示された複数の部品を選択する選択操作と、前記画面における前記複数の部品の位置関係と、に基づいて、前記複数の部品の選択順を決定し、
     前記複数の部品に対して、前記選択順が前の部品を親部品とし、前記選択順が後の部品を子部品とする親子関係を設定する、
     作画支援方法。
PCT/JP2023/004545 2023-02-10 2023-02-10 作画支援プログラム、作画支援装置及び作画支援方法 Ceased WO2024166352A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2023535059A JP7415086B1 (ja) 2023-02-10 2023-02-10 作画支援プログラム、作画支援装置及び作画支援方法
PCT/JP2023/004545 WO2024166352A1 (ja) 2023-02-10 2023-02-10 作画支援プログラム、作画支援装置及び作画支援方法
CN202380090022.9A CN120435706A (zh) 2023-02-10 2023-02-10 绘图辅助程序、绘图辅助装置以及绘图辅助方法
DE112023004522.4T DE112023004522T5 (de) 2023-02-10 2023-02-10 Zeichenhilfsprogramm, Zeichenhilfsvorrichtung und Zeichenhilfsverfahren

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2023/004545 WO2024166352A1 (ja) 2023-02-10 2023-02-10 作画支援プログラム、作画支援装置及び作画支援方法

Publications (1)

Publication Number Publication Date
WO2024166352A1 true WO2024166352A1 (ja) 2024-08-15

Family

ID=89534353

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/004545 Ceased WO2024166352A1 (ja) 2023-02-10 2023-02-10 作画支援プログラム、作画支援装置及び作画支援方法

Country Status (4)

Country Link
JP (1) JP7415086B1 (ja)
CN (1) CN120435706A (ja)
DE (1) DE112023004522T5 (ja)
WO (1) WO2024166352A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006099573A (ja) * 2004-09-30 2006-04-13 Digital Electronics Corp 画面作成装置、画面作成プログラムおよびそれを記録した記録媒体
WO2015005058A1 (ja) * 2013-07-08 2015-01-15 グレープシティ株式会社 タッチ操作対応プログラム・コード変換方法およびプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4011466B2 (ja) * 2002-11-27 2007-11-21 株式会社デジタル ユーザインターフェース装置、および、そのプログラム
US20070247394A1 (en) * 2006-04-20 2007-10-25 Boyan Corydon J Display menu allowing better accessibility in a limited space
JP2013225247A (ja) * 2012-04-23 2013-10-31 Nec Casio Mobile Communications Ltd 情報処理装置、操作補助方法およびプログラム
CN104715092B (zh) * 2013-12-17 2017-10-10 北京华大九天软件有限公司 一种层次版图验证中快速建立Label与图形连接关系的方法
JP6057006B2 (ja) * 2016-05-17 2017-01-11 富士ゼロックス株式会社 情報処理装置及びプログラム
JP2018101237A (ja) * 2016-12-20 2018-06-28 キヤノンマーケティングジャパン株式会社 プログラム生成装置、その処理方法及びプログラム
JP6576608B1 (ja) * 2019-01-31 2019-09-18 三菱電機株式会社 作画支援装置、表示装置、作画支援方法およびコンピュータプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006099573A (ja) * 2004-09-30 2006-04-13 Digital Electronics Corp 画面作成装置、画面作成プログラムおよびそれを記録した記録媒体
WO2015005058A1 (ja) * 2013-07-08 2015-01-15 グレープシティ株式会社 タッチ操作対応プログラム・コード変換方法およびプログラム

Also Published As

Publication number Publication date
DE112023004522T5 (de) 2025-08-28
JPWO2024166352A1 (ja) 2024-08-15
JP7415086B1 (ja) 2024-01-16
CN120435706A (zh) 2025-08-05

Similar Documents

Publication Publication Date Title
CN103069373B (zh) 二维滑块控件
US20050068290A1 (en) Method for creating and using user-friendly grids
US20140164967A1 (en) Object operation apparatus and non-transitory computer-readable storage medium
CN112000328B (zh) 一种页面可视化编辑方法、装置及设备
US10241651B2 (en) Grid-based rendering of nodes and relationships between nodes
JP6078243B2 (ja) 表示システムおよび表示プログラム
JP7415086B1 (ja) 作画支援プログラム、作画支援装置及び作画支援方法
JP7085650B2 (ja) モバイル端末のシステムインターフェースを設定する方法、装置、媒体及びデバイス
CN111698491A (zh) 一种多投影图像显示方法、装置及电子设备和存储介质
JP6330348B2 (ja) 情報処理装置
JP5811781B2 (ja) グラフ表示装置およびプログラム
CN113625931A (zh) 一种桌面切换方法、计算设备及可读存储介质
JP5858731B2 (ja) ツリー表示調整装置
JP2009026160A (ja) 階層データ表示プログラム,階層データ表示方法,階層データ表示装置
CN106843645B (zh) 一种确定视图显示位置的方法及设备
JP6225668B2 (ja) ファイル管理装置及びプログラム
JP2016016319A (ja) 仮想空間平面上に配置したオブジェクトを表示制御するゲーム・プログラム
WO2023195050A1 (ja) 作画支援プログラム、作画支援装置及び作画支援方法
JP6142553B2 (ja) 図形表示制御装置、図形表示制御方法及びプログラム
JP5563385B2 (ja) レイアウトパタン生成装置及びレイアウトパタン生成方法
JP5532890B2 (ja) 表示装置およびプログラム
JP3047851B2 (ja) 図形の寸法値表示装置及び方法
JP3635174B2 (ja) 図形入力作業の支援装置
DE102024113891A1 (de) System und verfahren zum erzeugen und zum spielen eines volumetrischen scrabble-spiels
JP5510253B2 (ja) 図形表示装置およびプログラム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 2023535059

Country of ref document: JP

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

Ref document number: 23921181

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 112023004522

Country of ref document: DE

WWE Wipo information: entry into national phase

Ref document number: 202380090022.9

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 202380090022.9

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 112023004522

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 23921181

Country of ref document: EP

Kind code of ref document: A1