WO2012008099A1 - 設計支援装置、設計支援プログラム、設計支援方法、及び集積回路 - Google Patents

設計支援装置、設計支援プログラム、設計支援方法、及び集積回路 Download PDF

Info

Publication number
WO2012008099A1
WO2012008099A1 PCT/JP2011/003597 JP2011003597W WO2012008099A1 WO 2012008099 A1 WO2012008099 A1 WO 2012008099A1 JP 2011003597 W JP2011003597 W JP 2011003597W WO 2012008099 A1 WO2012008099 A1 WO 2012008099A1
Authority
WO
WIPO (PCT)
Prior art keywords
gui
frame
processing time
redrawing
drawing processing
Prior art date
Application number
PCT/JP2011/003597
Other languages
English (en)
French (fr)
Inventor
光洋 阿曽
秦 秀彦
Original Assignee
パナソニック株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by パナソニック株式会社 filed Critical パナソニック株式会社
Priority to US13/395,556 priority Critical patent/US8683360B2/en
Priority to CN201180003783.3A priority patent/CN102483682B/zh
Priority to JP2012524411A priority patent/JP5650740B2/ja
Publication of WO2012008099A1 publication Critical patent/WO2012008099A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation

Definitions

  • the present invention relates to a technique for supporting GUI (graphical user interface) design.
  • GUI graphical user interfaces
  • the user can use a large number of functions provided in the digital device by operating the GUI components displayed on the screen of the display unit via an input device such as a mouse, a keyboard, and a remote controller.
  • an input device such as a mouse, a keyboard, and a remote controller.
  • digital devices tend not only to draw a still image as a GUI, but also to use a GUI that is fun to use even if it looks beautiful by using animations and visual effects.
  • GUI drawing processing increases the amount of GUI drawing processing, so the GUI may not be drawn with the expected performance with the limited hardware performance of digital devices.
  • a smooth and beautiful GUI animation may be rendered as an unnatural animation with a click.
  • GUI designer needs to know how the GUI design change affects the GUI performance on the digital device.
  • Non-Patent Document 1 a graphic indicating a region where a GUI is redrawn is displayed so as to be superimposed on the GUI display, thereby causing the designer to reduce the GUI performance degradation factor. What is visually informed is known.
  • Non-Patent Document 1 the outline of the region to be redrawn is highlighted using a thick line, so that the designer is informed of the relevance between the GUI performance and the GUI design.
  • the designer determines that the GUI performance has deteriorated because the redrawn area is large from the highlighted image, and the redrawn area becomes narrower. In this way, the GUI design is changed.
  • Non-Patent Document 1 only the highlight display for the redrawn area is displayed so as to be superimposed on the GUI when the drawing of the GUI is updated. For this reason, when the GUI is displayed as an animation, the thick line indicating the outline of the region to be redrawn is updated one after another along with the frame update, making it difficult to grasp in which frame the drawing performance is degraded. Further, Non-Patent Document 1 does not present any information indicating how to improve the GUI, such as how much the area of the redrawing area can be reduced to prevent the GUI performance from being degraded. For this reason, the user cannot quickly grasp the improvement point of the GUI.
  • An object of the present invention is to provide a design support apparatus, a design support program, and a design support capable of quickly recognizing a GUI improvement point even for a user who does not have specialized knowledge of hardware or software that executes the GUI.
  • a method and an integrated circuit are provided.
  • a design support apparatus is a design support apparatus that supports GUI (graphical user interface) design, and stores an attribute information storage unit that preliminarily stores attribute information for displaying a GUI to be displayed. And when the user inputs a drawing start command using the input device, based on the attribute information, the drawing process of the GUI is started, and by redrawing the difference image of the frames that are chronologically before and after, A rendering processing unit for displaying the GUI animation; a redrawing region based on the region redrawn by the rendering processing unit; and redrawing for displaying an image indicating the set redrawing region superimposed on the GUI
  • the drawing processing time of the updated frame is measured and When the drawn processing time exceeds a predetermined reference processing time, a target redrawing area that can be drawn within the reference processing time is calculated, and an image showing the calculated target redrawing area is displayed as the drawing processing time.
  • a design support program is a design support program that supports the design of a GUI (graphical user interface), and stores in advance attribute information for displaying a GUI to be displayed as an animation.
  • the GUI drawing process is started based on the attribute information, and the difference images of the frames before and after the time series are redrawn.
  • a rendering processing unit for displaying the GUI animation a redrawing region is set based on the region redrawn by the rendering processing unit, and an image showing the set redrawing region is superimposed on the GUI.
  • the updated drawing of the frame is performed.
  • a target redrawing area that can be drawn within the reference processing time is calculated, and an image showing the calculated target redrawing area is obtained.
  • the computer is caused to function as a target redrawing area display unit that superimposes and displays on an excess frame that is a frame that exceeds the reference processing time.
  • a design support method is a design support method for supporting GUI (graphical user interface) design, in which a computer inputs a drawing start command using an input device.
  • GUI graphical user interface
  • the GUI drawing process is started, and by redrawing the difference image between frames that are chronologically changed,
  • a drawing processing step for displaying a GUI animation, and a computer sets a redrawing region based on the region redrawn by the drawing processing step, and displays an image showing the set redrawing region superimposed on the GUI.
  • the redraw area display step and the computer updates the GUI frame by the drawing process step.
  • a target redrawing area that can be drawn within the reference processing time is calculated and calculated.
  • An integrated circuit is an integrated circuit that supports GUI (graphical user interface) design, and when a user inputs a drawing start command using an input device, Based on attribute information stored in advance to animate the GUI to be displayed, the GUI drawing processing is started, and the GUI is animated by redrawing the difference images of the frames that precede and follow in time series.
  • a drawing processing unit a redrawing region display unit configured to set a redrawing region based on the region redrawn by the drawing processing unit, and to display an image indicating the set redrawing region superimposed on the GUI;
  • the drawing processing time of the updated frame is measured, and the measured drawing processing time is predetermined.
  • a target redrawing area that can be drawn within the reference processing time is calculated, and an image showing the calculated target redrawing area is displayed in a frame in which the drawing processing time exceeds the reference processing time. And a target redrawing area display unit that is displayed superimposed on a certain excess frame.
  • FIG. 1 is a block diagram of a digital device to which a design support apparatus according to an embodiment of the present invention is applied. It is the figure which showed an example of GUI drawn by the design support apparatus of this Embodiment. It is the figure which showed an example of the data structure of the attribute information which an attribute information storage part memorize
  • FIG. 1 is a block diagram of a digital device 1 to which a design support apparatus 30 according to an embodiment of the present invention is applied.
  • the design support device 30 is a device that supports GUI design executed in the digital device 1. Therefore, a mode is conceivable in which the design support apparatus 30 is mounted on a computer different from the digital device 1 that is a GUI design target, and a GUI designed by a professional user such as a designer is mounted on the digital device 1 using this computer. It is done.
  • a mode in which the design support device 30 is mounted on the digital device 1 that is a GUI design target and the specialized user designs the GUI is also conceivable. Further, a mode in which a general user who has purchased the digital device 1 designs his / her favorite GUI is also conceivable.
  • the design support apparatus 30 is mounted on the digital device 1 and a general user or a specialized user designs a GUI as an example. I will explain.
  • the digital apparatus 1 shown in FIG. 1 includes an input device 10, a display device 20, and a design support device 30.
  • the design support apparatus 30 includes an input processing unit 31, a drawing processing unit 32, an attribute information management unit 33, an attribute information storage unit 34, a GUI performance management unit 35, a GUI performance information storage unit 36, a redrawing area display unit 37, and a display update.
  • the input device 10 includes input devices such as a keyboard, a mouse, a remote controller, and a touch panel, and various operations input from the user to operate GUI components that configure the GUI displayed on the screen of the display device 20. Commands and various operation commands input from the user to design the GUI are accepted.
  • the input device 10 when receiving an operation command from the user, notifies the input processing unit 31 of an input event indicating the type of the received operation command.
  • an input event for example, an input event indicating that a button of a keyboard or a remote controller is pressed, an input event indicating that the mouse pointer is moved to a certain coordinate, or the like is applicable.
  • the input processing unit 31 Upon receiving an input event indicating that a button for starting GUI animation display has been pressed from the input device 10, the input processing unit 31 causes the drawing processing unit 32 to start GUI drawing processing. A drawing start instruction A1 is notified.
  • the drawing processing unit 32 When receiving the drawing start instruction A1 from the input processing unit 31, the drawing processing unit 32 acquires the attribute information TB in each frame from the attribute information management unit 33, and in time series according to the acquired attribute information TB.
  • the GUI is displayed as an animation by redrawing the difference image between the preceding and following frames.
  • the drawing processing unit 32 notifies the attribute information acquisition request A2 to the attribute information management unit 33 and acquires the attribute information TB. Thereafter, the frame period elapses. Every time, the attribute information acquisition request A2 is notified to the attribute information management unit 33, the attribute information TB is acquired, a difference image is obtained according to the acquired attribute information TB, and the difference image is redrawn.
  • the drawing processing unit 32 notifies the display update unit 38 of a drawing command to display the GUI on the display device 20.
  • FIG. 2 is a diagram illustrating an example of a GUI rendered by the design support apparatus 30.
  • FIG. 2A illustrates an initial frame F (S) of the GUI animation displayed on the display apparatus 20, and
  • FIG. Indicates the final frame F (E) of the animation displayed on the display device 20.
  • the GUI shown in FIG. 2 is a GUI displayed on the display device 20 when the digital device 1 executes a slide show function in which a user browses photographic images.
  • FIG. 3 is a diagram showing an example of the data structure of the attribute information stored in the attribute information storage unit 34.
  • (A) shows the attribute information TB (S) in the initial frame F (S) of the GUI.
  • B) shows attribute information TB (E) in the last frame F (E) of the GUI.
  • Frames F (S) and F (E) shown in FIGS. 2A and 2B have, for example, the upper left corner of the screen 201 of the display device 20 as the origin, the right direction as the positive direction of the X axis, and the downward direction.
  • the position of each pixel is defined using an XY coordinate system in which Y is the positive direction of the Y axis.
  • Y is the positive direction of the Y axis.
  • 1920 pixels are arranged in the X-axis direction
  • 1080 pixels are arranged in the Y-axis direction.
  • the length of the screen 201 in the X-axis direction is defined as the width
  • the length in the Y-axis direction is defined as the height.
  • the attribute information of the frame F (S) shown in FIG. 2 (A) is defined by the attribute information TB (S) shown in FIG. 3 (A), and the attribute information of the frame F (E) shown in FIG. It is defined by attribute information TB (E) shown in 3 (B). That is, the drawing processing unit 32 refers to the attribute information TB (S) when drawing the frame F (S), and refers to the attribute information TB (E) when drawing the frame F (E).
  • the attribute information TB (S) and TB (E) shown in FIGS. 3A and 3B has a two-dimensional table format data structure, and constitutes each of the frames F (S) and F (E). This is information for defining the display position and the like of each GUI component.
  • the attribute information TB (S), TB (E) includes fields for storing “part ID”, “overlapping order”, “part type”, “display position”, “display size”, and “transparency”, respectively. ing. “Part ID” is identification information for specifying a GUI part, and is configured by a numerical value uniquely assigned to each GUI part.
  • the “overlapping order” is information indicating which is to be displayed preferentially when GUI parts overlap each other.
  • the “overlapping order” is defined to be displayed on the front (user side) on the screen 201 as the numerical value increases. Note that GUI components having the same “overlap order” are defined so that their display positions do not overlap.
  • Part type is information indicating the type of GUI part divided from the display mode of the GUI part and the characteristics of the event that occurs, and includes buttons, characters, images, text, and the like.
  • Display position indicates the display position of the GUI component on the screen 201.
  • two-dimensional coordinate data composed of a value on the X axis and a value on the Y axis is employed.
  • the display position indicates the upper left position of the GUI component.
  • the display position shown in FIG. 3 indicates the position of the center of the GUI component when the GUI component is circular or elliptical.
  • Display size is information indicating the size of the GUI component.
  • the size is defined by the width (w) and the height (h). Since all of the GUI parts shown in FIG. 3 are rectangular, the size can be defined using the width and height. However, when a circular GUI part is used, the size is defined by the radius, and the elliptical In the case of adopting a shape GUI part, the size is defined by the short axis and the long axis.
  • Transparency is a numerical value indicating whether or not a GUI part is rendered translucently.
  • the GUI component is not drawn at all and is not displayed on the screen.
  • a case where the transparency is 0 ⁇ transparency ⁇ 1 is defined as translucent.
  • a GUI component with “transparency” translucent is drawn so that the background image can be seen through.
  • a GUI component having a semi-transparent translucency is arranged so that a GUI component having a small numerical value of “overlap order” is superimposed on the background side, the GUI component is drawn so that the GUI component can be seen through.
  • alpha blending may be employed as a method for rendering the GUI component translucently.
  • the ratio of the luminance values of R, G, and B of the GUI component or background image arranged in the background of the GUI component and the luminance values of R, G, and B of the GUI component are indicated by “transparency”. And the GUI part is drawn.
  • GUI components having “component IDs” “3202” to “3207” are defined.
  • the GUI component whose “component ID” is “3202” corresponds to the button B1 shown in FIG.
  • Three GUI parts having “part IDs” “3205” to “3207” correspond to the images G1 to G3 shown in FIG.
  • the “transparency” is 0.0 for the GUI component of the button whose “component ID” is “3203” and the GUI component of the character whose component ID is “3204”. It is not displayed in FIG.
  • the same six GUI parts as the attribute information shown in FIG. 3A are defined.
  • the “transparency” of the GUI component whose “component ID” is “3202” is 0.0
  • the “transparency” of the GUI component whose “component ID” is “3203” is 1. .0. Therefore, in FIG. 2B, the button B1 displayed in FIG. 2A is not displayed, and the button B2 is displayed instead.
  • the transparency of the GUI component whose “component ID” is “3204” is 1.0. Therefore, the GUI component of the character TX that is not displayed in FIG. 2A is displayed in FIG.
  • a button B1 shown in FIG. 2A is a “play” button, and when the user operates the button B1, a drawing start instruction A1 is output, and GUI animation display is started.
  • FIGS. 2A and 2B an animation in which the image G3 shown in FIG. 2A is gradually enlarged until the size of the image G3 shown in FIG. ing.
  • GUI component is in a format (for example, a program) in which the attribute information TB (S), TB (E), and an event that occurs when operated by the user can be executed on the digital device 1. Defined.
  • the attribute information management unit 33 manages the attribute information TB stored in the attribute information storage unit 34. Specifically, the attribute information management unit 33 performs predetermined interpolation processing on the attribute information TB stored in the attribute information storage unit 34 every time the attribute information acquisition request A2 is notified from the drawing processing unit 32.
  • the attribute information TB (i) in the i-th frame (i is an index for defining the frame number) is calculated and passed to the drawing processing unit 32.
  • the attribute information storage unit 34 stores initial attribute information TB (S) of GUI and final attribute information TB (E). Therefore, the attribute information management unit 33 uses the elapsed time ⁇ T from the start of the animation and the predetermined display time TT from the start of the animation to the end thereof to use the attribute information TB (S), TB. By interpolating (E), attribute information TB (i) is calculated.
  • Such interpolation processing may be employed, for example, linear interpolation or Bezier interpolation is employed.
  • the attribute information management unit 33 passes the attribute information TB (S) to the drawing processing unit 32. Thereby, the frame F (S) shown in FIG. 2A is drawn.
  • the drawing processing unit 32 starts counting the elapsed time ⁇ T and passes the attribute information acquisition request A2 to the attribute information management unit 33.
  • the attribute information management unit 33 receives the attribute information acquisition request A2, compares the attribute information TB (S) with the attribute information TB (E), and the “display position” or “display size” changes.
  • the GUI component is specified as the GUI component to be animated.
  • the GUI component (image G3) having the “component ID” “3207” has the “display position” and “display size” changed, so that the GUI to be animated is displayed. Identified as a part.
  • the attribute information management unit 33 multiplies each of the display position difference and the display size difference of the attribute information TB (S) and TB (E) by ⁇ T / TT, thereby interpolating and displaying the image G3.
  • the position and the interpolation display size are obtained by linear interpolation.
  • the attribute information management unit 33 displays the obtained interpolation display position and interpolation display size in the fields “display position” and “display size” of the record whose “component ID” is “3207” of the attribute information TB (i). Store and pass to the drawing processing unit 32.
  • the attribute information management unit 33 executes the above processing to obtain the interpolation display position and the interpolation display size, and stores the drawing in the attribute information TB (i) for drawing.
  • the data is passed to the processing unit 32.
  • the image G3 is smoothly moved from the “display position” and “display size” defined by the attribute information TB (S) toward the “display position” and “display size” defined by the attribute information TB (E). Animated as it changes.
  • the attribute information storage unit 34 is constituted by a rewritable nonvolatile storage device, for example, and stores attribute information TB (S) and TB (E) in advance.
  • the GUI performance management unit 35 generates a GUI performance management table TBS that stores the drawing processing time TS of each frame measured by the target redrawing area display unit 39 in association with the attribute information TB in each frame, and generates the generated GUI performance.
  • the management table TBS is stored in the GUI performance information storage unit 36, and the GUI performance management table TBS is managed.
  • FIG. 4 is a diagram showing an example of the data structure of the GUI performance management table TBS.
  • the GUI performance management table TBS shown in FIG. 4 includes fields for storing “elapsed time”, “link information”, and “performance value”.
  • “Elapsed time” indicates an elapsed time ⁇ T (msec) since the start of animation display.
  • “Link information” indicates an attribute information ID for identifying the attribute information used when drawing the frame of the elapsed time ⁇ T stored in the “Elapsed time” field.
  • the rendering processing time TS stored in the “performance value” field is associated with the attribute information TB assigned 30011 as the attribute information ID. ing.
  • “Performance value” indicates the drawing processing time TS measured by the target redrawing area display unit 39 with respect to the frame drawn when the elapsed time ⁇ T has passed.
  • the “performance value” is 30 msec, it can be seen that it took 30 msec to draw the frame at the elapsed time ⁇ T.
  • the GUI performance management unit 35 acquires the attribute information TB corresponding to the drawing processing time TS from the attribute information management unit 33 when the storage request A3 for the drawing processing time TS is notified from the target redrawing area display unit 39. Then, by assigning the attribute information ID to the acquired attribute information TB, the GUI performance management table TBS is generated.
  • a numerical value uniquely assigned to each attribute information TB is adopted as the attribute information ID, and a larger numerical value is assigned as the elapsed time ⁇ T increases.
  • the save request A3 is notified from the target redrawing area display unit 39 every time the drawing processing time TS is measured, and the GUI performance management unit 35 updates the GUI performance management table TBS every time the save request A3 is notified. Update. Therefore, the GUI performance management table TBS shown in FIG. 4 is generated for the number of frames drawn from the start to the end of the animation.
  • a GUI performance management table TBS is generated in which information associated with the elapsed time ⁇ T, the drawing processing time TS, and the attribute information TB is stored in time series.
  • FIG. 5 shows a frame drawn according to the attribute information TB shown in FIG.
  • the “display position” of the GUI component (image G3) with the component ID 3207 is “480,280”
  • the “display size” is “520,360”. That is, the interpolation display position of the image G3 is calculated as “480, 280” and the interpolation display size is calculated as “520, 360”. Therefore, the image G3 shown in FIG. 5 is displayed with the upper left position at the coordinates “480, 280”, the width 520, and the height 360.
  • a button B2 which is a “stop” button, is displayed.
  • a program is created in advance so that when the animation is started, a “stop” button is displayed instead of the “play” button, and the attribute information management unit 33 follows the program in accordance with the attribute information TB (S 4), the transparency of the button B1 that was 1.0 was changed to 0.0, and the transparency of the button B2 that was 0.0 in the attribute information TB (S) was changed to 1.0.
  • the redrawing area display unit 37 sets the redrawing area SD based on the area redrawn by the drawing processing unit 32 in each frame, and superimposes an image indicating the set redrawing area SD on the GUI. And display.
  • FIG. 6A shows an example of the redrawing area SD.
  • an image G3 (i) shows an image G3 drawn in the i-th frame F (i), which is the current frame, and an image G3 (i-1) is 1 in the frame F (i).
  • An image G3 drawn in the previous frame F (i-1) is shown.
  • an animation is used in which the image G3 moves to the lower right of the screen 201 and is enlarged and displayed as time increases.
  • the drawing processing unit 32 draws the image G3 (i) and, at the same time, moves the image G3 (i-1) to display a newly displayed background (color, image, etc.) and a part of the image G2. It is necessary to draw.
  • the redrawing area display unit 37 sets a circumscribed rectangle that is a figure circumscribing the image G3 (i) and the image G3 (i-1) as the redrawing area SD in the frame F (i).
  • a drawing process such as “image G3 (i) + image G2 + background part” is performed, or images G2 and G3 in the redrawing area SD.
  • the redrawing area display unit 37 superimposes and displays an image that highlights the outline of the set redrawing area SD on the frame F (i).
  • a rectangular image SQ1 in which the outline of the redrawing area SD is indicated by a bold line is employed as an image showing the redrawing area SD.
  • the redrawing area display unit 37 may superimpose and display the rectangular image SQ1 on each frame of the GUI, or may superimpose and display the rectangular image SQ1 only on an excess frame described later.
  • the redrawing area display unit 37 superimposes the redrawing area SD on each frame or excess frame by notifying the display update unit 38 of a drawing command for superimposing and displaying the rectangular image SQ1 indicating the redrawing area SD. Display.
  • the target redrawing area display unit 39 measures the drawing processing time TS of the updated frame, and the measured drawing processing time TS is predetermined.
  • the reference processing time TR is exceeded, the target redrawing region MD that can be drawn within the reference processing time TR is calculated, and an image showing the calculated target redrawing region MD is displayed. It is displayed superimposed on the excess frame, which is the excess frame.
  • the reference processing time TR for example, a predetermined time during which the GUI can be smoothly displayed as an animation can be adopted based on the drawing processing capability of the hardware executing the GUI.
  • the target redrawing area display unit 39 notifies the GUI performance management unit 35 of a storage request A3 for storing the drawing processing time TS in the GUI performance management table TBS every time the drawing processing time TS is calculated.
  • the frame F (i) is an excess frame.
  • FIG. 6B is a diagram showing a frame in which the target redrawing area MD is displayed.
  • a region surrounded by a dotted line shown in FIG. 6B is a target redrawing region MD.
  • the target redrawing region MD can be approximately defined by the following equation (1).
  • the target redrawing area display unit 39 calculates the width MD_w and the height MD_h of the target redrawing area MD, assuming that the target redrawing area MD obtained by Expression (1) is similar to the redrawing area SD. .
  • the target redrawing area display unit 39 superimposes an image that highlights the outline of the target redrawing area MD having the width MD_w and the height MD_h on the frame F (i).
  • a rectangular image SQ2 in which the outline of the target redrawing area MD is indicated by a dotted line is adopted as an image showing the target redrawing area MD.
  • the target redrawing region display unit 39 sets the target redrawing region MD in the frame F (i) so that the upper left vertex of the target redrawing region MD is positioned at the upper left vertex of the redrawing region SD. Yes.
  • the target redrawing area display unit 39 sets the target redrawing area MD in the frame F (i) so that the center of the target redrawing area MD is positioned at the center of the redrawing area SD.
  • the target redrawing region MD is set so that the lower left, upper right, or lower right vertex of the target redrawing region MD is positioned at the lower left, upper right, or lower right vertex of the redrawing region SD. Also good.
  • the user can reduce the redrawing area SD to what extent the drawing processing time TS of the frame F (i) is the reference processing time TR. It can be easily recognized whether the following can be made. This makes it easy to design a GUI that allows users who do not have specialized knowledge of hardware or software to execute the GUI to quickly recognize improvements on the GUI and display them smoothly. Can do.
  • the target redrawing area display unit 39 when the drawing processing time TS exceeds the reference processing time TR, the frames F (i + 1), F (i + 2),... After the excess frame F (i). The drawing processing by the drawing processing unit 32 is stopped.
  • the animation is stopped with the excess frame F (i) displayed on the screen 201. Therefore, the user can easily recognize which frame is the excess frame F (i). Further, since the excess frame F (i) is stopped and displayed, and the rectangular images SQ1 and SQ2 are displayed there, how much the user redraws the redrawing area SD when redesigning the excess frame F (i). Can be easily recognized.
  • the target redrawing area display unit 39 redraws the redrawing area SD (i) in the excess frame F (i) in the frame F (i-1). It is determined whether or not the area is larger than the area SD (i-1).
  • the target redrawing area display unit 39 determines that the redrawing area SD (i) is enlarged, the target redrawing area SD (i) extracts the GUI component that is the enlargement factor of the redrawing area SD (i) and extracts the extracted GUI. The part is highlighted in the excess frame F (i).
  • the user can easily recognize which GUI component display mode is changed when the excess frame is redesigned so that the redrawing area SD (i) can be reduced.
  • FIG. 8 shows the GUI component highlighted because it is an enlargement factor of the redrawing area SD.
  • the target redrawing area display unit 39 compares the redrawing area SD (i-1) in the frame F (i-1) with the redrawing area SD (i). Then, when the area of the redrawing area SD (i) is larger than the area of the redrawing area SD (i-1), the target redrawing area display unit 39 indicates that the redrawing area SD (i) is enlarged. judge.
  • the target redrawing area display unit 39 extracts an area HD that protrudes from the redrawing area SD (i-1) in the redrawing area SD (i).
  • an L-shaped region with halftone dots is extracted as the region HD.
  • the target redrawing area display unit 39 enlarges the redrawing area SD (i) for GUI parts that are drawn in the area HD and at least a part of the contour is inscribed in the redrawing area SD (i). It is extracted as the GUI component that caused the problem.
  • the image G3 (i) is extracted as the GUI component that is the enlargement factor.
  • the target redrawing area display unit 39 superimposes and displays on the frame F (i) an image that highlights the outline of the image G3 (i) that is the GUI component that has become the enlargement factor.
  • a rectangular image SQ3 in which the outline of the image G3 (i) is indicated by a bold line is adopted as an image to be highlighted.
  • the target redrawing area display unit 39 calculates 1 from the attribute information TB (i) corresponding to the excess frame F (i) and the excess frame F (i). Compare the attribute information TB (i-1) corresponding to the previous frame F (i-1), extract the GUI component whose transparency has changed from non-transparent to semi-transparent, and exceed the extracted GUI component You may highlight in F (i).
  • the target redrawing area display unit 39 highlights the button B2 in the excess frame F (i).
  • the target redrawing area display unit 39 may highlight the button B2 by, for example, surrounding the outline of the button B2 with a thick line and displaying the color of the button B2 in a color different from the normal color.
  • the drawing processing time TS is increased due to the necessity of executing image processing on the background image of the GUI component or the image data of the GUI component behind the GUI component. May increase. Therefore, in the present embodiment, if there is a GUI component that has changed from non-transparent to translucent in the excess frame F (i), the GUI component is highlighted. Thereby, the user can easily recognize which drawing processing time TS is shorter than the reference processing time TR if the GUI component display mode is changed when the GUI design is changed.
  • the target redrawing area display unit 39 corresponds to the attribute information TB (i) corresponding to the excess frame F (i) and the frame F (i-1).
  • the attribute information TB (i-1) may be compared to extract a newly drawn GUI component in the excess frame F (i), and the extracted GUI component may be highlighted in the excess frame.
  • the drawing area display unit 39 highlights this button in the excess frame F (i).
  • the target redrawing area display unit 39 may determine whether or not a new GUI component has been added by paying attention to the “component ID” included in the attribute information TB.
  • the target redrawing area display unit 39 determines the size of the drawing area to be reduced based on the difference between the drawing processing time TS and the reference processing time TR.
  • the target reduction area DD shown is calculated.
  • the target reduction area is defined by Expression (3).
  • Target reduction area DD (drawing processing time TS ⁇ reference processing time TR) ⁇ (1 / constant ⁇ ) (3)
  • Drawing processing time TS Total drawing area of redrawn individual GUI parts SB ⁇ constant ⁇ (4)
  • the sum SB of the drawing areas of the individual GUI parts shown in Expression (4) is the area of the image G3 (i) + the new GUI part.
  • drawing processing time TS measured by the target redrawing area display unit 39 may be adopted as the drawing processing time TS instead of the value calculated by the equation (4).
  • a rectangular image SQ4 in which the outline of the target reduction area DD is indicated by a bold line may be adopted.
  • the display position of the rectangular image SQ4 may be displayed at the upper left, upper right, lower left, or lower right vertex of the redrawing area SD as in the rectangular image SQ2, or the redrawing area SD may be displayed. You may display so that it may be located in the center.
  • the user can prevent the redrawing area SD from being excessively reduced when redesigning the GUI.
  • the target redrawing area display unit 39 outputs the drawing request for drawing the rectangular images SQ2 to SQ4 to the redrawing area display unit 37, thereby outputting the rectangular images SQ2 to SQ4 to the redrawing area display unit 37. It is displayed superimposed on the excess frame F (i).
  • the redrawing area display unit 37 notifies the display update unit 38 of a drawing command corresponding to the drawing request, and the rectangle The images SQ2 to SQ4 are drawn.
  • the display update unit 38 includes a drawing buffer, and sequentially writes image data of frames constituting the GUI to the drawing buffer at a predetermined frame rate in accordance with a drawing command from the drawing processing unit 32. Is displayed on the display device 20.
  • the display update unit 38 superimposes and displays the rectangular image SQ1 by writing the rectangular image SQ1 in the drawing buffer in which each frame or excess frame is written in accordance with the drawing command from the redrawing region display unit 37.
  • the display update unit 38 also superimposes the rectangular images SQ2 to SQ4 on the excess frame by writing the rectangular images SQ2 to SQ4 in the drawing buffer in which the excess frame has been written in accordance with the drawing command from the redrawing area display unit 37.
  • the display device 20 includes a display device such as a liquid crystal panel or a plasma panel, and displays the image data written in the drawing buffer by the display update unit 38 on the screen 201.
  • FIG. 7 is a flowchart showing processing of the design support apparatus 30 according to the embodiment of the present invention.
  • step S1 the input processing unit 31 receives an input event and outputs a drawing start instruction A1 to the drawing processing unit 32. Thereby, the process after step S2 is started. On the other hand, if no input operation is performed on the button B1 (NO in step S1), the process returns to step S1, and the processes after step S2 are not started.
  • step S2 when the drawing processing unit 32 reaches the drawing processing start time of the frame F (i) (YES in step S2), the drawing processing unit 32 starts the drawing processing of the frame F (i). 39 is notified. Upon receiving this notification, the target redrawing area display unit 39 starts measuring the drawing processing time TS (step S3).
  • the rendering processing unit 32 sequentially renders each frame of the GUI at a predetermined frame period. Therefore, the drawing processing unit 32 determines YES in step S2 when the frame period has elapsed from the start time of the drawing process of the frame F (i-1) and the drawing timing of the frame F (i) has come.
  • the drawing processing unit 32 notifies the attribute information management unit 33 of the attribute information acquisition request A2 for the frame F (i) and acquires the attribute information TB (i) corresponding to the frame F (i).
  • Step S4 a difference image is specified from the attribute information TB (i) and the attribute information TB (i-1), and a drawing command for drawing the difference image is output to the display update unit 38, thereby generating a frame.
  • Draw F (i) the attribute information TB (i) is calculated by performing the above-described interpolation processing on the attribute information TB (S) and the attribute information TB (E).
  • the drawing processing unit 32 finishes drawing the frame F (i)
  • the drawing processing unit 32 outputs a drawing process completion notification to the target redrawing region display unit 39.
  • the measurement of the drawing processing time TS is finished (step S5).
  • the target redrawing area display unit 39 notifies the save request A3 to the GUI performance management unit 35, and the GUI performance management unit 35 draws the measured frame F (i) as shown in FIG.
  • the time TS and the attribute information TB (i) corresponding to the frame F (i) are associated with each other and added to the GUI performance management table TBS, and the drawing processing time TS is stored (step S6).
  • the redrawing region display unit 37 sets a redrawing region SD based on the difference image redrawn by the drawing processing unit 32, and issues a drawing command for drawing the rectangular image SQ1 indicating the redrawing region SD.
  • the rectangular image SQ1 is superimposed and displayed on the frame F (i) (step S7). As a result, a rectangular image SQ1 as shown in FIG.
  • the target redrawing area display unit 39 determines whether or not the drawing processing time TS of the frame F (i) is larger than the reference processing time TR.
  • the drawing processing stop instruction for the frame F (i + 1) and thereafter is output to the drawing processing unit 32.
  • step S8 when the drawing processing time TS is equal to or shorter than the reference processing time TR (NO in step S8), the processing is returned to step S2, and the drawing processing for the next frame is performed.
  • the drawing processing unit 32 receives a drawing processing stop instruction from the target redrawing area display unit 39, and stops drawing processing after the frame F (i + 1) (step S9).
  • the target redrawing area display unit 39 calculates the target redrawing area MD using Expression (1), calculates the target reduction area DD using Expression (3), and is shown in FIG. 6B.
  • the rectangular images SQ2, SQ4 and the rectangular image SQ3 shown in FIG. 8 are superimposed and displayed on the frame F (i) (step S10).
  • the animation is stopped, and the rectangular image SQ2 indicating the target redrawing region MD is displayed superimposed on the excess frame. . That is, the target redrawing area MD indicating the size of the area that satisfies the reference processing time TR is visualized and displayed.
  • the target reduction area DD indicating the size of the area to be reduced so that the drawing processing time TS satisfies the reference processing time TR is visualized and displayed. Therefore, the user can know how much the area of each GUI component should be reduced with reference to the target reduction area DD, and can prevent redesign that excessively reduces the GUI component. it can.
  • the target redrawing area display unit 39 extracts a GUI part that has been newly drawn by paying attention to the “part ID” in the excess frame.
  • the present invention is not limited to this, and the “transparency” is not limited to this.
  • the target redrawing area display unit 39 changes the colors of the rectangular images indicating the outlines of the GUI parts to different colors, It is preferable to change the type of shading to a different type, or to change the line type indicating the outline to a different line type.
  • the method mentioned when there are a plurality of the above-mentioned GUI parts may be used.
  • the target redrawing area display unit 39 displays in such a way that, in the excess frame, when one extracted GUI component is a GUI component extracted by a plurality of factors among factors 1 to 3, all the plurality of factors can be understood. It is preferred to highlight the GUI part in an aspect.
  • the image G3 (i) is highlighted because it corresponds to the factor 1, but at the same time, when the transparency changes from non-transparent to translucent, it also corresponds to the factor 2. In this case, it is preferable to highlight the image G3 (i) so that the image G3 (i) corresponds not only to the factor 1 but also to the factor 2.
  • an outline of a GUI component corresponding to only one factor may be highlighted and a GUI component corresponding to two factors may be highlighted by shading display.
  • the target redrawing area display unit 39 highlights the GUI part and displays a balloon-shaped figure near the GUI part when the extracted GUI part corresponds to a plurality of factors in the excess frame.
  • the text indicating the factor may be displayed in a balloon-shaped figure. For example, when the image G3 (i-1) shown in FIG. 6A is enlarged to the image G3 (i) and the transparency is changed from non-transparent to translucent, the image G3 has factors 1 and 2 This contributed to these two factors.
  • a balloon-type figure is displayed in the vicinity of the image G3 (i-1) as the text indicating the factor, and the factor 1 such as “width / height increased”, “translucent”, etc. 2 may be displayed.
  • the target redrawing area display unit 39 extracts a plurality of GUI parts corresponding to any one of the factors 1 to 3 in the excess frame, the target redrawing area display unit 39 separates each GUI component according to the factors 1 to 3 respectively.
  • the drawing processing time may be calculated, and a predetermined number of GUI components may be highlighted in order from the GUI component with the longest drawing processing time.
  • the drawing processing time TS (k) of each GUI component can be expressed by Expression (5).
  • Drawing processing time TS (k) area S (k) of GUI part (k) ⁇ constant ⁇ (5)
  • Area S (k) GUI component (k) height k_h ⁇ width k_w
  • the constant ⁇ is a predetermined value according to factors 1 to 3.
  • the redrawing area SD is There may be more than one.
  • the area in which the GUI part is drawn becomes the redrawing area SD.
  • the target redrawing area display unit 39 draws the frame F (i) when the redrawing area SD shown in the upper side of FIG. 6A is SD_1 and the redrawing area of the newly added button B3 is SD_2.
  • the measurement of the drawing processing time TS is ended when the drawing of the redrawing area SD with the later drawing end time of the redrawing area SD_1 and the redrawing area SD_2 is finished.
  • the drawing processing time TS of the frame F (i) may be used.
  • each process performed by the design support apparatus 30 according to the embodiment of the present invention may be realized by the CPU executing a design support program stored in a storage device (ROM, RAM, hard disk, etc.).
  • the design support program may be installed in the storage device via the storage medium, or may be directly executed from the storage medium.
  • Examples of the storage medium include semiconductor memories such as ROM, RAM, and flash memory, magnetic disk memories such as flexible disks and hard disks, optical disk memories such as CD-ROM, DVD, and BD, and memory cards.
  • the storage medium is a concept including a communication medium such as a telephone line or a conveyance path. That is, the design support apparatus 30 may be realized by the CPU executing the design support program stored in the WEB server.
  • seven blocks other than the attribute information storage unit 34 and the GUI performance information storage unit 36 in the design support apparatus 30 are mainly realized by the CPU, and the attribute information storage unit 34 and the GUI performance.
  • the information storage unit 36 is mainly realized by a storage device.
  • each block of the design support apparatus 30 shown in FIG. 1 can be realized as an LSI which is an integrated circuit.
  • each block may be individually made into one chip, or may be made into one chip for all blocks or at least one block.
  • the LSI includes an IC, a system LSI, a super LSI, and an ultra LSI.
  • the design support apparatus 30 shown in FIG. 1 other than the attribute information storage unit 34 and the GUI performance information storage unit 36 may be realized as an integrated circuit.
  • the information storage unit 34 and the GUI performance information storage unit 36 may be implemented as an integrated circuit.
  • the method of circuit integration is not limited to LSI, and may be realized by a dedicated circuit or a general-purpose processor, for example.
  • an FPGA Field Programmable Gate Array
  • a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
  • a design support apparatus is a design support apparatus that supports GUI (graphical user interface) design, and stores an attribute information storage unit that preliminarily stores attribute information for displaying a GUI to be displayed. And when the user inputs a drawing start command using the input device, based on the attribute information, the drawing process of the GUI is started, and by redrawing the difference image of the frames that are chronologically before and after, A rendering processing unit for displaying the GUI animation; a redrawing region based on the region redrawn by the rendering processing unit; and redrawing for displaying an image indicating the set redrawing region superimposed on the GUI Each time the GUI frame is updated by the area display unit and the drawing processing unit, the drawing processing time of the updated frame is measured and measured.
  • GUI graphical user interface
  • a target redrawing area display unit that displays the frame by superimposing on an excess frame that is a frame that exceeds the processing time.
  • the drawing processing time of each frame is measured, and in the excess frame in which the drawing processing time exceeds the reference processing time, what is the size of the redrawing area, the drawing processing time is the reference processing time
  • An image showing the target redrawing area indicating whether or not the value is exceeded is displayed.
  • the target redrawing area display unit preferably stops the drawing processing by the drawing processing unit of a frame after the excess frame.
  • the animation when the GUI is displayed as an animation, if an excess frame is detected, the animation is stopped in a state where the excess frame is displayed. Therefore, the user can easily recognize which frame is the excess frame. In addition, since the excess frame is stopped and displayed, and an image showing the redrawing area and the target redrawing area is displayed there, the user can reduce the redrawing area by redesigning the excess frame. It can be easily recognized whether it should be.
  • the attribute information includes information indicating a display position and a size in each frame of the GUI component constituting the GUI, and the target redrawing area display unit has exceeded the reference processing time. If the redrawing area in the excess frame is larger than the redrawing area in the frame immediately before the excess frame, and if it is determined that the redrawing area is enlarged, It is preferable to extract a GUI component that has caused an enlargement of the redrawing area, and to highlight the extracted GUI component in the excess frame.
  • the user can easily recognize which GUI component display mode is changed when the excess frame is redesigned to reduce the redrawing area.
  • the attribute information includes information indicating transparency in each frame of the GUI component constituting the GUI, and the target redrawing area display unit, when the drawing processing time exceeds the reference processing time,
  • the attribute information corresponding to the excess frame and the attribute information corresponding to the frame immediately before the excess frame are compared, the GUI component whose transparency has changed from non-transparent to translucent is extracted, and the extracted GUI component Is preferably highlighted in the excess frame.
  • the drawing processing time is increased because the background of the GUI component or the image data of the GUI component behind the GUI component needs to be executed. May increase. Therefore, in the present embodiment, when there is a GUI part that has changed from non-transparent to translucent in the excess frame, the GUI part is highlighted. As a result, the user can easily recognize which drawing process time is shorter than the reference processing time if the GUI component display mode is changed when the GUI design is changed.
  • the attribute information includes identification information in each frame of a GUI component constituting the GUI, and the target redrawing area display unit displays the excess frame when the drawing processing time exceeds the reference processing time. Is compared with attribute information corresponding to a frame immediately before the excess frame, a GUI component newly drawn in the excess frame is extracted, and the extracted GUI component is extracted in the excess frame. It is preferable to highlight.
  • the user can easily recognize that the newly added GUI component contributes to the deterioration of the GUI performance in the excess frame.
  • the target redrawing area can be clearly defined using the above relational expression.
  • the target redrawing area display unit determines the size of the drawing area to be reduced based on the difference between the drawing processing time and the reference processing time. It is preferable to calculate a target reduction area that indicates and display an image showing the calculated target reduction area.
  • the design support apparatus can visualize the target redrawing region and the GUI component that is the cause of the performance degradation and notify the user in the excess frame where the drawing processing time exceeds the reference processing time. This is useful for improving the efficiency of GUI improvement work based on the information obtained.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

 再描画領域表示部37は、各フレームにおいて描画処理部32により再描画された領域に基づいて再描画領域SDを設定し、設定した再描画領域SDを示す画像をGUIに重畳して表示する。目標再描画領域表示部39は、描画処理部32によりGUIのフレームが更新される毎に、更新されたフレームの描画処理時間TSを計測し、計測した描画処理時間TSが所定の基準処理時間TRを超過した場合、基準処理時間TR以内で描画可能な目標再描画領域MDを算出し、算出した目標再描画領域MDを示す画像を、超過フレームに重畳して表示する。

Description

設計支援装置、設計支援プログラム、設計支援方法、及び集積回路
 本発明は、GUI(グラフィカルユーザインターフェイス)の設計を支援する技術に関するものである。
 近年、デジタルテレビ、録画機、及び携帯電話等のデジタル機器においては、グラフィカルユーザインターフェイス(以下、「GUI」と記述する)が広く採用されている。GUIは、ボタン、画像、及びデータ表示リスト等のGUI部品により構成されている。
 ユーザは、表示部の画面上に表示されたGUI部品をマウス、キーボード、及びリモコン等の入力装置を介して操作することにより、デジタル機器に備えられた多数の機能を利用することができる。
 デジタル機器のGUIでは、ユーザが簡単に機器の機能を呼び出して利用するという目的に加え、ユーザにとって、デジタル機器の操作そのものを楽しいものとしたり、デジタル機器のデザイン性を高めたりする目的も求められている。
 そのため、デジタル機器では、GUIとして単に静止した画像を描画するだけでなく、アニメーションや視覚効果等を利用することにより、見た目が美しく使っても楽しいGUIが搭載される傾向にある。
 一方、アニメーションや視覚効果などの多用は、GUIの描画処理量を増加させるため、デジタル機器の限られたハードウエア性能では、期待される性能でGUIが描画されない場合がある。例えば、滑らかで美しいGUIのアニメーションが、カクツキのある不自然なアニメーションとして描画されてしまう場合がある。
 期待どおりの性能でGUIを描画することができない場合、GUIのデザイン性を高めたり、GUIを使いやすく楽しいものにするために採用されたアニメーションや視覚効果が、逆にGUIのデザイン性を低めたり、ユーザのGUI操作性を阻害したりする要因になる。
 従って、GUIのデザイナは、GUIのデザイン性の高さ及び使いやすさと、GUIの性能とのバランスを十分に考慮したうえでGUIをデザインする必要がある。また、GUIが期待どおりの性能で描画されない場合には、期待通りの性能でGUIが描画されるように、GUIのデザインを改善する必要がある。
 このようなデザインの改善を行うためには、GUIのデザイナは、GUIのデザイン変更が、デジタル機器上でのGUIの性能にどのような影響を与えるかを知る必要がある。しかしながら、GUIの性能を決定づけるデジタル機器のハードウエアの性能(CPU速度性能、メモリの読み書き性能、及びグラフィックハードウェアの処理性能等)や、ソフトウェアプログラムの構成を、専門的な知識を持たないデザイナが理解することは困難である。
 このような問題に対処する従来技術として、例えば、非特許文献1には、GUIが再描画される領域を示す図形を、GUIの表示に重ねて表示することにより、GUI性能の低下要因をデザイナに視覚的に報知するものが知られている。
 つまり、GUIをアニメーション表示する場合、フレーム毎に表示画面の全領域が再描画されるのではなく、前フレームと現フレームとの差分画像のみが現フレームで再描画される。そして、この再描画される領域の面積が大きくなるにつれて、GUIの描画処理時間が増大し、GUIの性能が低下する。
 そこで、非特許文献1では、再描画される領域の輪郭を、太線を用いて強調表示することにより、GUIの性能とGUIのデザインとの関連性がデザイナに報知されている。そして、非特許文献1において、デザイナは、強調表示された画像から、再描画される領域が広いために、GUIの性能が低下していることを判断して、再描画される領域が狭くなるように、GUIのデザインを変更する。
 しかしながら、非特許文献1では、再描画される領域に対する強調表示をGUIの描画更新に伴いGUIに重ねて表示することのみが行われている。そのため、GUIをアニメーション表示した場合、フレームの更新と合わせて再描画される領域の輪郭を示す太線も次々と更新され、どのフレームにおいて描画性能が低下しているかを把握することが困難となる。また、非特許文献1では、再描画する領域の面積をどれくらい縮小すればGUIの性能低下を防止することができるかというような、GUIの改善点を示す情報が全く呈示されない。そのため、ユーザはGUIの改善点を速やかに把握することができない。
ActionScript 3.0Language and Components Reference
 本発明の目的は、GUIを実行するハードウエアやソフトウエアの専門的知識を持たないユーザであっても、GUIの改善点を速やかに認識することができる設計支援装置、設計支援プログラム、設計支援方法、及び集積回路を提供することである。
 本発明の一局面による設計支援装置は、GUI(グラフィカルユーザインターフェイス)の設計を支援する設計支援装置であって、表示対象となるGUIをアニメーション表示するための属性情報を予め記憶する属性情報記憶部と、ユーザが入力装置を用いて描画開始指令を入力した場合、前記属性情報に基づいて、前記GUIの描画処理を開始し、時系列的に前後するフレームの差分画像を再描画することで、前記GUIをアニメーション表示する描画処理部と、前記描画処理部により再描画された領域に基づいて再描画領域を設定し、設定した再描画領域を示す画像を前記GUIに重畳して表示する再描画領域表示部と、前記描画処理部により前記GUIのフレームが更新される毎に、更新されたフレームの描画処理時間を計測し、計測した描画処理時間が所定の基準処理時間を超過した場合、前記基準処理時間以内で描画可能な目標再描画領域を算出し、算出した目標再描画領域を示す画像を、前記描画処理時間が前記基準処理時間を超えたフレームである超過フレームに重畳して表示する目標再描画領域表示部とを備える。
 また、本発明の別の一局面による設計支援プログラムは、GUI(グラフィカルユーザインターフェイス)の設計を支援する設計支援プログラムであって、表示対象となるGUIをアニメーション表示するための属性情報を予め記憶する属性情報記憶部と、ユーザが入力装置を用いて描画開始指令を入力した場合、前記属性情報に基づいて、前記GUIの描画処理を開始し、時系列的に前後するフレームの差分画像を再描画することで、前記GUIをアニメーション表示する描画処理部と、前記描画処理部により再描画された領域に基づいて再描画領域を設定し、設定した再描画領域を示す画像を前記GUIに重畳して表示する再描画領域表示部と、前記描画処理部により前記GUIのフレームが更新される毎に、更新されたフレームの描画処理時間を計測し、計測した描画処理時間が所定の基準処理時間を超過した場合、前記基準処理時間以内で描画可能な目標再描画領域を算出し、算出した目標再描画領域を示す画像を、前記描画処理時間が前記基準処理時間を超えたフレームである超過フレームに重畳して表示する目標再描画領域表示部としてコンピュータを機能させる。
 また、本発明の更に別の一局面による設計支援方法は、GUI(グラフィカルユーザインターフェイス)の設計を支援する設計支援方法であって、コンピュータが、ユーザが入力装置を用いて描画開始指令を入力した場合、表示対象となるGUIをアニメーション表示するために予め記憶された属性情報に基づいて、前記GUIの描画処理を開始し、時系列的に前後するフレームの差分画像を再描画することで、前記GUIをアニメーション表示する描画処理ステップと、コンピュータが、前記描画処理ステップにより再描画された領域に基づいて再描画領域を設定し、設定した再描画領域を示す画像を前記GUIに重畳して表示する再描画領域表示ステップと、コンピュータが、前記描画処理ステップにより前記GUIのフレームが更新される毎に、更新されたフレームの描画処理時間を計測し、計測した描画処理時間が所定の基準処理時間を超過した場合、前記基準処理時間以内で描画可能な目標再描画領域を算出し、算出した目標再描画領域を示す画像を、前記描画処理時間が前記基準処理時間を超えたフレームである超過フレームに重畳して表示する目標再描画領域表示ステップとを備える。
 また、本発明の更に別の一局面による集積回路は、GUI(グラフィカルユーザインターフェイス)の設計を支援する集積回路であって、ユーザが入力装置を用いて描画開始指令を入力した場合、表示対象となるGUIをアニメーション表示するために予め記憶された属性情報に基づいて、前記GUIの描画処理を開始し、時系列的に前後するフレームの差分画像を再描画することで、前記GUIをアニメーション表示する描画処理部と、前記描画処理部により再描画された領域に基づいて再描画領域を設定し、設定した再描画領域を示す画像を前記GUIに重畳して表示する再描画領域表示部と、前記描画処理部により前記GUIのフレームが更新される毎に、更新されたフレームの描画処理時間を計測し、計測した描画処理時間が所定の基準処理時間を超過した場合、前記基準処理時間以内で描画可能な目標再描画領域を算出し、算出した目標再描画領域を示す画像を、前記描画処理時間が前記基準処理時間を超えたフレームである超過フレームに重畳して表示する目標再描画領域表示部とを備える。
本発明の実施の形態における設計支援装置が適用されたデジタル機器のブロック図である。 本実施の形態の設計支援装置により描画されるGUIの一例を示した図である。 属性情報記憶部が記憶する属性情報のデータ構造の一例を示した図である。 GUI性能管理テーブルのデータ構造の一例を示した図である。 図4に示す属性情報にしたがって描画されたフレームを示している。 (A)は再描画領域の一例を示した図である。(B)は目標再描画領域が表示されたフレームを示した図である。 本発明の実施の形態による設計支援装置の処理を示すフローチャートである。 再描画領域の拡大要因となったために強調表示されたGUI部品を示している。
 以下本発明の実施の形態について、図面を参照しながら説明する。図1は、本発明の実施の形態における設計支援装置30が適用されたデジタル機器1のブロック図である。設計支援装置30は、デジタル機器1において実行されるGUIの設計を支援する装置である。したがって、設計支援装置30をGUIの設計対象となるデジタル機器1とは別のコンピュータに実装し、このコンピュータを用いてデザイナ等の専門ユーザにより設計されたGUIをデジタル機器1に実装する態様が考えられる。
 また、GUIの設計対象となるデジタル機器1に設計支援装置30を実装し、専門ユーザがGUIを設計する態様も考えられる。また、デジタル機器1を購入した一般ユーザが自身の好みのGUIを設計する態様も考えられる。
 本発明は、これら全ての態様が含まれることを想定しており、以下の説明では、デジタル機器1に設計支援装置30を実装し、一般ユーザ又は専門ユーザがGUIを設計することを例に挙げて説明する。
 図1に示すデジタル機器1は、入力装置10、表示装置20、及び設計支援装置30を備えている。設計支援装置30は、入力処理部31、描画処理部32、属性情報管理部33、属性情報記憶部34、GUI性能管理部35、GUI性能情報記憶部36、再描画領域表示部37、表示更新部38、及び目標再描画領域表示部39を備えている。
 入力装置10は、キーボード、マウス、リモコン、及びタッチパネル等の入力装置により構成され、表示装置20の画面上に表示されたGUIを構成するGUI部品を操作するためにユーザから入力される種々の操作指令、及びGUIを設計するためにユーザから入力される種々の操作指令等を受け付ける。
 具体的には、入力装置10は、ユーザからの操作指令を受け付けると、受け付けた操作指令の種別を示す入力イベントを入力処理部31へ通知する。ここで、入力イベントとしては、例えば、キーボードやリモコンのボタンが押されたことを示す入力イベント及びマウスポインタをある座標に移動させたことを示す入力イベント等が該当する。
 入力処理部31は、入力装置10からGUIのアニメーション表示を開始させるためのボタンが押されたことを示す入力イベントを受け取ると、描画処理部32に対して、GUIの描画処理を開始させるための描画開始指示A1を通知する。
 描画処理部32は、入力処理部31から描画開始指示A1が通知されると、属性情報管理部33から各フレームにおける属性情報TBを取得して、取得した属性情報TBにしたがって、時系列的に前後するフレームの差分画像を再描画することでGUIをアニメーション表示する。具体的には、描画処理部32は、描画開始指示A1が通知されると、属性情報取得依頼A2を属性情報管理部33に通知して属性情報TBを取得し、以後、フレーム周期が経過する毎に、属性情報取得依頼A2を属性情報管理部33に通知して属性情報TBを取得し、取得した属性情報TBにしたがって、差分画像を求め、差分画像を再描画する。なお、本実施の形態では、描画処理部32は、描画指令を表示更新部38に通知することで、GUIを表示装置20に表示させる。
 図2は、設計支援装置30により描画されるGUIの一例を示した図であり、(A)は表示装置20に表示されるGUIのアニメーションの初期のフレームF(S)を示し、(B)は表示装置20に表示されるアニメーションの最終のフレームF(E)を示している。なお、図2で示すGUIは、デジタル機器1において、ユーザが写真画像を閲覧するスライドショー機能を実行する際に表示装置20に表示されるGUIである。
 図3は、属性情報記憶部34が記憶する属性情報のデータ構造の一例を示した図であり、(A)はGUIの初期のフレームF(S)における属性情報TB(S)を示し、(B)はGUIの最終のフレームF(E)における属性情報TB(E)を示している。
 以下、図2のGUIの動作と、図3の属性情報との関係を説明する。図2(A)、(B)に示すフレームF(S),F(E)は、表示装置20の備える画面201の例えば左上端を原点として、右方向をX軸の正方向とし、下方向をY軸の正方向とするXY座標系を用いて各画素の位置が規定されている。なお、以降の説明においては、画面201は、X軸方向に例えば1920個の画素が配列され、Y軸方向に例えば1080個の画素が配列されているものとする。また、画面201のX軸方向の長さを幅、Y軸方向の長さを高さと定義する。
 図2(A)に示すフレームF(S)の属性情報は図3(A)に示す属性情報TB(S)で定義され、図2(B)に示すフレームF(E)の属性情報は図3(B)に示す属性情報TB(E)で定義されている。つまり、描画処理部32は、フレームF(S)を描画する場合は属性情報TB(S)を参照し、フレームF(E)を描画する場合は属性情報TB(E)を参照するのである。
 図3(A)、(B)に示す属性情報TB(S),TB(E)は、2次元のテーブル形式のデータ構造を有し、フレームF(S),F(E)のそれぞれを構成する各GUI部品の表示位置等を定義するための情報である。
 属性情報TB(S),TB(E)は、「部品ID」、「重なり順」、「部品種別」、「表示位置」、「表示サイズ」、及び「透過度」をそれぞれ格納するフィールドを備えている。「部品ID」は、GUI部品を特定するための識別情報であり、各GUI部品に対して一意的に割り付けられた数値により構成されている。
 「重なり順」は、GUI部品同士が重なった場合にどちらを優先的に表示させるかを示す情報である。本実施の形態では、「重なり順」は数値が大きいほど画面201で手前(ユーザ側)に表示するように定義されている。なお、「重なり順」が同じ値であるGUI部品は、表示位置が重ならないように定義される。
 「部品種別」は、GUI部品の表示態様及び発生するイベントの特徴から区分けされるGUI部品の種類を示す情報であり、ボタン、文字、画像、テキスト等が含まれている。
 「表示位置」はGUI部品の画面201における表示位置を示し、図3の例では、X軸上の値とY軸上の値とからなる2次元の座標データが採用されている。なお、図3の例では、表示位置は、GUI部品が矩形状である場合、このGUI部品の左上の位置を示すものとする。また、図3に示す表示位置は、GUI部品が円形又は楕円形である場合、このGUI部品の中心の位置を示すものとする。
 「表示サイズ」は、GUI部品のサイズを示す情報であり、図3の例では、幅(w)と、高さ(h)とによってサイズが規定されている。なお、図3に示すGUI部品は全て矩形状であるため、幅と高さとを用いてサイズを規定することができるが、円形状のGUI部品を採用する場合は半径によりサイズが定義され、楕円形状のGUI部品を採用する場合は短軸及び長軸によってサイズが定義される。
 「透過度」は、GUI部品を半透明で描画するか否かを示す数値であり、本実施の形態では、透過度=1を非透明、透過度=0を透明と定義している。なお、透過度が0の場合、GUI部品は全く描画されず、画面に表示されない。また、透過度が0<透過度<1の場合を半透明と定義する。「透過度」が半透明のGUI部品は、背景画像が透けて見えるように描画される。また、透過度が半透明のGUI部品は、背景側に「重なり順」の数値が小さいGUI部品が重畳して配置されている場合、そのGUI部品が透けて見えるように描画される。
 なお、GUI部品を半透明で描画する手法としては、例えばアルファブレンディングを採用すればよい。アルファブレンディングでは、GUI部品の背景に配置されたGUI部品又は背景画像のR,G,Bの輝度値と、GUI部品のR,G,Bの輝度値とが、「透過度」で示される割合で混合されてGUI部品が描画される。
 図3(A)に示す属性情報TB(S)では、「部品ID」が「3202」~「3207」の6個のGUI部品が定義されている。「部品ID」が「3202」のGUI部品は、図2(A)に示すボタンB1に対応している。「部品ID」が「3205」~「3207」の3つのGUI部品は、図2(A)に示す画像G1~G3に対応している。なお、属性情報TB(S)では、「部品ID」が「3203」のボタンのGUI部品と部品IDが「3204」の文字のGUI部品とは、「透過度」がそれぞれ0.0であるため、図2(A)で表示されていない。
 図3(B)に示す属性情報TB(E)も、図3(A)に示す属性情報と同一の6個のGUI部品が定義されている。但し、属性情報TB(E)では、「部品ID」が「3202」のGUI部品の「透過度」が0.0となり、「部品ID」が「3203」のGUI部品の「透過度」が1.0となっている。そのため、図2(B)においては、図2(A)で表示されていたボタンB1が非表示とされ、代わりにボタンB2が表示されている。
 また、属性情報TB(E)では、「部品ID」が「3204」のGUI部品の透過度が1.0となっている。そのため、図2(A)では表示されていなかった文字TXのGUI部品が図2(B)では表示されている。
 なお、図2(A)に示すボタンB1は、「再生」ボタンであり、ユーザによりボタンB1が操作されると、描画開始指示A1が出力され、GUIのアニメーション表示が開始される。図2(A)、(B)の例では、図2(A)に示す画像G3が、図2(B)に示す画像G3のサイズになるまで徐々に、拡大表示されていくアニメーションが採用されている。
 なお、GUI部品は、上記の属性情報TB(S),TB(E)、及び、ユーザにより操作されたときに発生するイベント等が、デジタル機器1上で実行可能な形式(例えば、プログラム)で定義される。
 図1に戻り、属性情報管理部33は、属性情報記憶部34に記憶された属性情報TBを管理する。具体的には、属性情報管理部33は、描画処理部32から属性情報取得依頼A2が通知される毎に、属性情報記憶部34に記憶されている属性情報TBに対して所定の補間処理を実行し、i(iはフレーム番号を規定するためのインデックス)番目のフレームにおける属性情報TB(i)を算出し、描画処理部32に渡す。
 本実施の形態では、属性情報記憶部34には、GUIの初期の属性情報TB(S)と、最終の属性情報TB(E)とが格納されている。したがって、属性情報管理部33は、アニメーションが開始されてからの経過時間ΔTと、アニメーションが開始されてから終了されるまでの所定の表示時間TTとを用いて、属性情報TB(S),TB(E)を補間することで、属性情報TB(i)を算出する。ここで、補間処理としては、経過時間ΔTが増大するにつれて属性情報TB(E)に近づいていき、かつ、表示時間TTの経過時に属性情報TB(E)になるという条件が満たされる限り、どのような補間処理が採用されてもよく、例えば線形補間、ベジェ補間が採用される。
 具体的には、属性情報管理部33は、初期のフレームを表示するための属性情報取得依頼A2が描画処理部32から通知されると、属性情報TB(S)を描画処理部32に渡す。これにより、図2(A)に示すフレームF(S)が描画される。
 次に、ボタンB1が操作され描画開始指示A1が通知されると、描画処理部32は、経過時間ΔTの計時を開始すると共に、属性情報取得依頼A2を属性情報管理部33に渡す。
 次に、属性情報管理部33は、属性情報取得依頼A2を受け取り、属性情報TB(S)と属性情報TB(E)とを比較し、「表示位置」又は「表示サイズ」が変化しているGUI部品をアニメーション対象のGUI部品として特定する。図3(A)、(B)の例では、「部品ID」が「3207」のGUI部品(画像G3)が、「表示位置」及び「表示サイズ」が変化しているため、アニメーション対象のGUI部品として特定される。
 そして、属性情報管理部33は、属性情報TB(S),TB(E)の表示位置の差分と表示サイズの差分とのそれぞれに対して、ΔT/TTを乗じることで、画像G3の補間表示位置と補間表示サイズとを線形補間により求める。そして、属性情報管理部33は、求めた補間表示位置と補間表示サイズとを属性情報TB(i)の「部品ID」が「3207」のレコードの「表示位置」及び「表示サイズ」のフィールドに格納し、描画処理部32に渡す。以後、属性情報管理部33は、属性情報取得依頼A2が通知される毎に、上記の処理を実行して補間表示位置と補間表示サイズとを求め、属性情報TB(i)に格納して描画処理部32に渡す。以上により、画像G3が属性情報TB(S)で定義される「表示位置」及び「表示サイズ」から属性情報TB(E)で定義される「表示位置」及び「表示サイズ」に向けて滑らかに変化するようにアニメーション表示される。
 図1に戻り、属性情報記憶部34は、例えば書き換え可能な不揮発性の記憶装置により構成され、属性情報TB(S),TB(E)を予め記憶している。
 GUI性能管理部35は、目標再描画領域表示部39が計測した各フレームの描画処理時間TSを、各フレームにおける属性情報TBと関連づけて記憶するGUI性能管理テーブルTBSを生成し、生成したGUI性能管理テーブルTBSをGUI性能情報記憶部36に記憶させ、GUI性能管理テーブルTBSを管理する。
 図4は、GUI性能管理テーブルTBSのデータ構造の一例を示した図である。図4に示すGUI性能管理テーブルTBSは、「経過時間」、「リンク情報」、及び「性能値」がそれぞれ格納されるフィールドを備えている。
 「経過時間」はアニメーション表示を開始してからの経過時間ΔT(msec)を示している。「リンク情報」は「経過時間」のフィールドに格納された経過時間ΔTのフレームを描画する際に用いられた属性情報を特定するための属性情報IDを示している。図4の例では「属性情報ID」が30011であるため、属性情報IDとして30011が付与された属性情報TBに対して、「性能値」のフィールドに格納された描画処理時間TSが対応付けられている。
 「性能値」は経過時間ΔTが経過した時に描画されたフレームに対して、目標再描画領域表示部39により計測された描画処理時間TSを示している。図4の例では、「性能値」が30msecであるため、経過時間ΔTにおいてフレームを描画するのに、30msecを要したことが分かる。
 なお、GUI性能管理部35は、目標再描画領域表示部39から描画処理時間TSの保存要求A3が通知された際に、描画処理時間TSに対応する属性情報TBを属性情報管理部33から取得し、取得した属性情報TBに属性情報IDを付与することで、GUI性能管理テーブルTBSを生成する。
 ここで、属性情報IDは、各属性情報TBに対して一意的に割り付けられた数値が採用され、経過時間ΔTが増大するにつれて大きな数値が割り付けられる。
 なお、保存要求A3は、描画処理時間TSが計測される毎に目標再描画領域表示部39から通知され、GUI性能管理部35は、保存要求A3が通知される毎にGUI性能管理テーブルTBSを更新する。したがって、図4に示すGUI性能管理テーブルTBSは、アニメーションが開始されてから終了されるまでに描画されるフレーム数分生成される。これにより、経過時間ΔT、描画処理時間TS、及び属性情報TBが関連付けられた情報が時系列で記憶されたGUI性能管理テーブルTBSが生成される。その結果、ユーザは、後から各フレームの描画処理時間と属性情報とを照らし合わせることが可能となり、GUIの改善点を特定する際に便利な情報を提供することができる。
 図5は、図4に示す属性情報TBにしたがって描画されたフレームを示している。図4に示す属性情報TBでは、部品IDが3207のGUI部品(画像G3)の「表示位置」が「480,280」であり、「表示サイズ」が「520,360」とされている。つまり、画像G3の補間表示位置が「480,280」、補間表示サイズが「520,360」と算出されている。よって、図5に示す画像G3は、左上の位置が「480,280」の座標に位置し、かつ、幅が520、高さが360で表示されている。
 なお、図5では、「停止」ボタンであるボタンB2が表示されている。これは、アニメーションが開始されると、「再生」ボタンに代えて「停止」ボタンを表示するように予めプログラムが作成されており、属性情報管理部33がそのプログラムにしたがって、属性情報TB(S)において1.0であったボタンB1の透過度を0.0に変更し、属性情報TB(S)において0.0であったボタンB2の透過度を1.0に変更して、図4に示す属性情報TBを生成したからである。
 図1に戻り、再描画領域表示部37は、各フレームにおいて描画処理部32により再描画された領域に基づいて再描画領域SDを設定し、設定した再描画領域SDを示す画像をGUIに重畳して表示する。図6(A)は再描画領域SDの一例を示した図である。図6(A)において、画像G3(i)は現フレームである第i番目のフレームF(i)において描画された画像G3を示し、画像G3(i-1)はフレームF(i)の1つ前のフレームF(i-1)において描画された画像G3を示している。
 図6(A)の例では、時間が増大するにつれて、画像G3が画面201の右斜め下に移動すると同時に拡大表示されるアニメーションが採用されている。この場合、描画処理部32は、画像G3(i)を描画すると同時に、画像G3(i-1)の移動により、新たに表示される背景(色や画像等)と画像G2の一部とを描画する必要がある。
 つまり、画像G3(i-1)を移動させて画像G(i)を表示する場合、画像G3(i-1)の消去処理が発生するが、このとき、画像G(i-1)の消去により露出する画像G2の部分の描画や、画像G3(i-1)の消去により露出する画像G2以外の背景(色や画像)の部分の描画を行う必要がある。
 したがって、再描画領域表示部37は、画像G3(i)と画像G3(i-1)とに外接する図形である外接矩形をフレームF(i)における再描画領域SDとして設定する。
 なお、再描画領域SDの描画処理としては、画像G3(i)+画像G2の部分+背景の部分」というように最小限の描画だけを行う処理や、再描画領域SD内の画像G2,G3(i-1)を消去した後、画像G3(i)及び画像G2の部分の描画を行う処理等が挙げられる。
 そして、再描画領域表示部37は、設定した再描画領域SDの輪郭を強調表示する画像をフレームF(i)に重畳表示させる。図6(A)の例では、再描画領域SDを示す画像として再描画領域SDの輪郭を太線で示す矩形画像SQ1が採用されている。なお、再描画領域表示部37は、GUIの各フレームに矩形画像SQ1を重畳表示してもよいし、後述する超過フレームに対してのみ矩形画像SQ1を重畳表示してもよい。
 なお、再描画領域表示部37は、再描画領域SDを示す矩形画像SQ1を重畳表示するための描画指令を表示更新部38に通知することで、再描画領域SDを各フレーム又は超過フレームに重畳表示させる。
 図1に戻り、目標再描画領域表示部39は、描画処理部32によりGUIのフレームが更新される毎に、更新されたフレームの描画処理時間TSを計測し、計測した描画処理時間TSが所定の基準処理時間TRを超過した場合、基準処理時間TR以内で描画可能な目標再描画領域MDを算出し、算出した目標再描画領域MDを示す画像を、描画処理時間TSが基準処理時間TRを超えたフレームである超過フレームに重畳して表示する。ここで、基準処理時間TRとしては、例えば、GUIを実行するハードウエアの描画処理能力に基づいて、GUIを滑らかにアニメーション表示することができる予め定められた時間を採用することができる。
 また、目標再描画領域表示部39は、描画処理時間TSを算出する毎に、描画処理時間TSをGUI性能管理テーブルTBSに記憶させるための保存要求A3をGUI性能管理部35に通知する。以下、フレームF(i)が超過フレームであるとして説明する。
 図6(B)は目標再描画領域MDが表示されたフレームを示した図である。図6(B)に示す点線で囲まれた領域が目標再描画領域MDである。ここで、目標再描画領域MDは、近似的には下記の式(1)によって定義することができる。
 目標再描画領域MD×定数β=基準処理時間TR・・・(1)
 ここで、定数βは、式(2)で表される。
 定数β=1/単位時間当たりの描画処理面積・・・(2)
 なお、式(2)に示す単位時間あたりの描画処理面積としては、単位時間(例えば、1秒間)あたりに、描画処理部32が描画することができる画素数として予め与えられた値が採用されている。
 そして、目標再描画領域表示部39は、式(1)により得られた目標再描画領域MDが再描画領域SDと相似であるとして、目標再描画領域MDの幅MD_w及び高さMD_hを算出する。
 そして、目標再描画領域表示部39は、幅MD_w及び高さMD_hを有する目標再描画領域MDの輪郭を強調表示する画像をフレームF(i)に重畳させる。図6(B)の例では、目標再描画領域MDを示す画像として目標再描画領域MDの輪郭を点線で示す矩形画像SQ2が採用されている。ここで、目標再描画領域表示部39は目標再描画領域MDの左上の頂点が再描画領域SDの左上の頂点に位置するように、フレームF(i)に目標再描画領域MDを設定している。但し、これは一例であり、目標再描画領域表示部39は、目標再描画領域MDの中心が再描画領域SDの中心に位置するように、フレームF(i)に目標再描画領域MDを設定してもよいし、目標再描画領域MDの左下、右上、又は右下の頂点が再描画領域SDの左下、右上、又は右下の頂点に位置するように目標再描画領域MDを設定してもよい。
 このように、フレームF(i)において目標再描画領域MDが表示されるため、ユーザは、再描画領域SDをどの程度縮小すれば、フレームF(i)の描画処理時間TSを基準処理時間TR以下にすることができるのかを容易に認識することができる。これにより、GUIを実行するハードウエアやソフトウエアの専門的知識を持たないユーザであっても、GUIの改善点を速やかに認識し、滑らかにアニメーション表示させることのできるGUIを容易に設計することができる。
 また、目標再描画領域表示部39は、描画処理時間TSが基準処理時間TRを超過した場合、超過フレームF(i)よりも後のフレームF(i+1),F(i+2),・・・の描画処理部32による描画処理を停止させる。
 これにより、GUIをアニメーション表示した場合に、超過フレームF(i)が検出されると、超過フレームF(i)が画面201に表示された状態でアニメーションが停止される。そのため、ユーザは、どのフレームが超過フレームF(i)であるかを容易に認識することができる。また、超過フレームF(i)が停止表示され、そこには、矩形画像SQ1,SQ2が表示されているため、ユーザは超過フレームF(i)を再設計する際にどの程度、再描画領域SDを縮小すればよいかを容易に認識することができる。
 また、目標再描画領域表示部39は、描画処理時間TSが基準処理時間TRを超えた場合、超過フレームF(i)における再描画領域SD(i)がフレームF(i-1)における再描画領域SD(i-1)よりも拡大しているか否かを判定する。そして、目標再描画領域表示部39は、再描画領域SD(i)が拡大していると判定した場合、再描画領域SD(i)の拡大要因となったGUI部品を抽出し、抽出したGUI部品を超過フレームF(i)において強調表示する。
 これにより、ユーザは、超過フレームを再設計する際にどのGUI部品の表示態様を変更すれば、再描画領域SD(i)を縮小できるかを容易に認識することができる。
 図8は、再描画領域SDの拡大要因となったために強調表示されたGUI部品を示している。図8に示すように、目標再描画領域表示部39は、フレームF(i-1)における再描画領域SD(i-1)と、再描画領域SD(i)とを比較する。そして、目標再描画領域表示部39は、再描画領域SD(i)の面積が再描画領域SD(i-1)の面積よりも大きい場合、再描画領域SD(i)が拡大していると判定する。
 そして、目標再描画領域表示部39は、再描画領域SD(i)において、再描画領域SD(i-1)からはみ出している領域HDを抽出する。図8の例では、網点を付したL字状の領域が領域HDとして抽出されている。
 そして、目標再描画領域表示部39は、領域HD内に描画され、かつ、少なくとも輪郭の一部が再描画領域SD(i)に内接しているGUI部品を再描画領域SD(i)の拡大要因となったGUI部品として抽出する。図8の例では、画像G3(i)が拡大要因となったGUI部品として抽出されている。
 そして、目標再描画領域表示部39は、拡大要因となったGUI部品である画像G3(i)の輪郭を強調表示する画像をフレームF(i)に重畳表示させる。図8の例では、画像G3(i)の輪郭を太線で示す矩形画像SQ3が強調表示する画像として採用されている。
 なお、図6(B)に示す矩形画像SQ1,SQ2と図8に示す矩形画像SQ3とを同時に表示すると、表示が紛らわしくなってしまうため、矩形画像SQ1~SQ3をそれぞれ異なる色で表示することが好ましい。
 また、目標再描画領域表示部39は、描画処理時間TSが基準処理時間TRを超えた場合、超過フレームF(i)に対応する属性情報TB(i)と、超過フレームF(i)より1つ前のフレームF(i-1)に対応する属性情報TB(i-1)とを比較し、透過度が非透明から半透明に変化したGUI部品を抽出し、抽出したGUI部品を超過フレームF(i)において強調表示してもよい。
 図2(B)に示すボタンB2の透過度がフレームF(i-1)から超過フレームF(i)に亘って、1.0から0.5に変化したとする。
 この場合、目標再描画領域表示部39は、超過フレームF(i)において、ボタンB2を強調表示する。ここで、目標再描画領域表示部39は、例えばボタンB2の輪郭を太線で囲む、ボタンB2の色を通常の色とは異なる色で表示させる等して、ボタンB2を強調表示すればよい。
 GUI部品を非透明から半透明に変える場合、GUI部品の背景画像やGUI部品の背後のGUI部品の画像データに対して画像処理を実行する必要がある等の理由から、描画処理時間TSを大きく増大させる虞がある。そこで、本実施の形態では、超過フレームF(i)において、非透明から半透明に変化したGUI部品が存在する場合、そのGUI部品を強調表示させている。これにより、ユーザは、GUIの設計変更を行う際にどのGUI部品の表示態様を変更すれば、描画処理時間TSが基準処理時間TRを下回るかを容易に認識することができる。
 目標再描画領域表示部39は、描画処理時間TSが基準処理時間TRを超えた場合、超過フレームF(i)に対応する属性情報TB(i)と、フレームF(i-1)に対応する属性情報TB(i-1)とを比較し、超過フレームF(i)において新たに描画されたGUI部品を抽出し、抽出したGUI部品を超過フレームにおいて強調表示してもよい。
 例えば、フレームF(i-1)から超過フレームF(i)に変化する際に、新たにボタンのGUI部品が追加表示されるように属性情報TB(i)に記述されていたとすると、目標再描画領域表示部39は、超過フレームF(i)においてこのボタンを強調表示させる。ボタンの強調表示の態様としては、ボタンの輪郭を太線で囲む、ボタンの色を通常の色とは異なる色で表示させる等の態様を採用することができる。ここで、目標再描画領域表示部39は、属性情報TBに含まれる「部品ID」に着目して、新たなGUI部品が追加されたか否かを判定すればよい。
 また、目標再描画領域表示部39は、描画処理時間TSが基準処理時間TRを超過した場合、描画処理時間TSと基準処理時間TRとの差分を基に、削減するべき描画面積の大きさを示す目標削減領域DDを算出する。ここで、目標削減領域は、式(3)により定義される。
 目標削減領域DD=(描画処理時間TS―基準処理時間TR)×(1/定数β)・・・(3)
 なお、1/定数β=単位時間当たりの描画面積である。
 ここで、描画処理時間TSは、式(4)により表される。
 描画処理時間TS=再描画された個々のGUI部品の描画面積の総和SB×定数β・・・(4)
 図6(A)に示す再描画領域SD内において、画像G(i)以外の領域に別のGUI部品が新たに追加されていたとする。この場合、式(4)に示す個々のGUI部品の描画面積の総和SBは、画像G3(i)+新たなGUI部品の面積となる。
 なお、描画処理時間TSとしては、式(4)で算出したものに代えて、目標再描画領域表示部39により計測された描画処理時間TSを採用してもよい。
 目標削減領域DDの表示態様としては、例えば、図6(B)に示すように、目標削減領域DDの輪郭を太線で示す矩形画像SQ4を採用すればよいが、目標再描画領域MD等との差別化を図るために、矩形画像SQ4を矩形画像SQ1~SQ3とは異なる色で表示することが好ましい。
 また、矩形画像SQ4の表示位置としては、矩形画像SQ2と同様、再描画領域SDの左上、右上、左下、又は右下の頂点に位置するように表示してもよいし、再描画領域SDの中心に位置するように表示してもよい。
 このように目標削減領域DDを表示することで、ユーザはGUIを再設計する際、再描画領域SDを過度に縮小することを防止することができる。
 なお、目標再描画領域表示部39は、再描画領域表示部37に、矩形画像SQ2~SQ4を描画するための描画依頼を再描画領域表示部37に出力することで、矩形画像SQ2~SQ4を超過フレームF(i)に重畳表示させる。なお、再描画領域表示部37は、目標再描画領域表示部39から矩形画像SQ2~SQ4の描画依頼が出力されると、その描画依頼に応じた描画指令を表示更新部38に通知し、矩形画像SQ2~SQ4を描画させる。
 図1に戻り、表示更新部38は、描画バッファを含み、描画処理部32からの描画指令にしたがって、GUIを構成するフレームの画像データを所定のフレームレートで描画バッファに順次書き込むことで、GUIを表示装置20に表示させる。
 また、表示更新部38は、再描画領域表示部37からの描画指令にしたがって、各フレーム又は超過フレームを書き込んだ描画バッファに矩形画像SQ1を書き込むことで、矩形画像SQ1を重畳表示させる。また、表示更新部38は、再描画領域表示部37からの描画指令にしたがって、超過フレームを書き込んだ描画バッファに矩形画像SQ2~SQ4を書き込むことで、超過フレームに矩形画像SQ2~SQ4を重畳表示させる。
 表示装置20は、例えば、液晶パネル、プラズマパネル等の表示装置から構成され、表示更新部38により描画バッファに書き込まれた画像データを画面201に表示する。
 以上、本発明の実施の形態による設計支援装置30の構成を説明した。続いて、本発明の実施の形態による設計支援装置30の処理について説明する。図7は、本発明の実施の形態による設計支援装置30の処理を示すフローチャートである。
 このフローチャートでは、図2(A)に示すフレームF(S)からフレームF(E)に向けて所定のフレームレートで画像G3が拡大表示されるアニメーションを例に挙げて説明する。
 まず、入力装置10を用いて、ユーザが図2に示すボタンB1に対して、入力操作を行う(ステップS1でYES)。すると、入力処理部31が、入力イベントを受け取り、描画開始指示A1を描画処理部32に出力する。これにより、ステップS2以降の処理が開始される。一方、ボタンB1に対して入力操作が行われない場合(ステップS1でNO)処理がステップS1に戻され、ステップS2以降の処理が開始されない。
 次に、描画処理部32は、フレームF(i)の描画処理の開始時刻に到達した場合(ステップS2でYES)、フレームF(i)の描画処理を開始することを目標再描画領域表示部39に通知する。この通知を受けた目標再描画領域表示部39は、描画処理時間TSの計時を開始する(ステップS3)。
 本実施の形態では、描画処理部32は、所定のフレーム周期でGUIの各フレームを順次に描画する。そのため、描画処理部32は、フレームF(i-1)の描画処理の開始時刻からフレーム周期が経過してフレームF(i)の描画タイミングになったとき、ステップS2でYESと判定する。
 次に、描画処理部32は、属性情報管理部33に対して、フレームF(i)に対する属性情報取得依頼A2を通知して、フレームF(i)に対応する属性情報TB(i)を取得し(ステップS4)、属性情報TB(i)と属性情報TB(i-1)とから差分画像を特定し、この差分画像を描画するための描画指令を表示更新部38に出力することでフレームF(i)を描画する。ここで、属性情報TB(i)は、属性情報TB(S)と属性情報TB(E)とに対して上述した補間処理を実行することで算出される。
 次に、描画処理部32はフレームF(i)の描画が終了すると、描画処理の完了通知を目標再描画領域表示部39に出力し、この通知を受けた目標再描画領域表示部39は、描画処理時間TSの計測を終了する(ステップS5)。
 次に、目標再描画領域表示部39は、保存要求A3をGUI性能管理部35に通知し、GUI性能管理部35は、図4に示すように、計測されたフレームF(i)の描画処理時間TSと、フレームF(i)に対応する属性情報TB(i)とを関連付けてGUI性能管理テーブルTBSに追加し、描画処理時間TSを保存する(ステップS6)。
 次に、再描画領域表示部37は、描画処理部32により再描画された差分画像に基づいて再描画領域SDを設定し、再描画領域SDを示す矩形画像SQ1を描画するための描画指令を表示更新部38に出力することで、フレームF(i)に矩形画像SQ1を重畳表示させる(ステップS7)。これにより、図6(A)に示すような矩形画像SQ1が画面201に表示される。
 次に、目標再描画領域表示部39は、フレームF(i)の描画処理時間TSが基準処理時間TRより大きいか否かを判定し、描画処理時間TSが基準処理時間TRより大きい場合(ステップS8でYES)、フレームF(i+1)以降の描画処理の停止指示を描画処理部32に出力する。
 一方、描画処理時間TSが基準処理時間TR以下である場合(ステップS8でNO)、処理がステップS2に戻され、次のフレームに対する描画処理が行われる。
 次に、描画処理部32は、目標再描画領域表示部39からの描画処理の停止指示を受け、フレームF(i+1)以降の描画処理を停止する(ステップS9)。
 次に、目標再描画領域表示部39は、式(1)を用いて目標再描画領域MDを算出し、式(3)を用いて目標削減領域DDを算出し、図6(B)に示す矩形画像SQ2,SQ4、及び図8に示す矩形画像SQ3をフレームF(i)に重畳表示させる(ステップS10)。
 このように、設計支援装置30によれば、描画処理時間TSが基準処理時間TRより大きい場合、アニメーションが停止され、目標再描画領域MDを示す矩形画像SQ2が超過フレームに重畳して表示される。つまり、基準処理時間TRを満たす領域のサイズを示す目標再描画領域MDが視覚化されて表示される。
 従って、GUIデザイナのような、描画処理時間TSを決定づける要因について専門的知識のないユーザであっても、目標再描画領域MDを参考にして、描画処理時間TSが基準処理時間TRを満たすようにGUIを再設計することが可能となる。
 また、設計支援装置30によれば、描画処理時間TSが基準処理時間TRを満たすために削減すべき領域のサイズを示す目標削減領域DDが視覚化して表示される。従って、ユーザは、目標削減領域DDを目安にして、個々のGUI部品の面積をどの程度縮小すればよいかを知ることができ、GUI部品を過剰に縮小するような再設計を防止することができる。
 なお、上記説明では、目標再描画領域表示部39は、超過フレームにおいて、「部品ID」に着目して新たに描画されたGUI部品を抽出したが、これに限定されず、「透過度」が透明(透過度=0.0)から、半透明(0<透過度<1)又は非透明(透過度=1.0)に変化したGUI部品を、新たに描画されたGUI部品として抽出してもよい。
 また、目標再描画領域表示部39は、超過フレームにおいて、描画処理時間TSの増加要因となったGUI部品が複数存在する場合、GUI部品の輪郭を示す矩形画像の色をそれぞれ異なる色にしたり、網掛けの種類を異なる種類にしたり、輪郭を示す線種を異なる線種にすることが好ましい。
 また、超過フレームにおいて、要因1(再描画領域SDの拡大に寄与しこと)により抽出されたGUI部品と、要因2(透過度が非透明(透過度=1.0)から半透明(0<透過度<1)に変化したこと)により抽出されたGUI部品と、要因3(新たに追加されたこと)により抽出されたGUI部品とが混在する場合、これらのGUI部品を要因別に区別して表示することが好ましい。要因別に区別して表示する手法としては、上記のGUI部品が複数存在する場合に挙げた手法を用いればよい。
 これにより、ユーザは、描画処理時間TSが基準処理時間TRを超えた原因を一目で理解することができる。
 また、目標再描画領域表示部39は、超過フレームにおいて、抽出した1つのGUI部品が、要因1~3のうち複数の要因により抽出したGUI部品である場合、複数の要因が全て分かるような表示態様でGUI部品を強調表示することが好ましい。
 例えば、図8において、画像G3(i)は要因1に該当するため強調表示されているが、同時に透明度が非透明から半透明に変化した場合、要因2にも該当することになる。この場合、画像G3(i)を要因1だけではなく要因2にも該当していることが分かるように、画像G3(i)を強調表示することが好ましい。
 例えば、1つの要因にだけ該当するGUI部品は輪郭を強調表示し、2つの要因が該当するGUI部品は網掛け表示により強調表示すればよい。
 また、目標再描画領域表示部39は、超過フレームにおいて、抽出した1つのGUI部品が複数の要因に該当する場合、当該GUI部品を強調表示すると共に、当該GUI部品の近傍に吹き出し型の図形を表示し、吹き出し型の図形の中に、要因を示すテキストを表示してもよい。例えば図6(A)に示す画像G3(i-1)が画像G3(i)に拡大し、かつ、透過度が非透明から半透明に変化した場合、画像G3は、要因1と要因2との2つの要因に寄与したことになる。
 この場合、要因を示すテキストとして、画像G3(i-1)の近傍に吹き出し型の図形を表示し、その中に「幅・高さが増加した」、「半透明化した」等の要因1、2を示すテキストを表示すればよい。
 また、目標再描画領域表示部39は、超過フレームにおいて、複数のGUI部品が要因1~3のいずれかに該当するものとして抽出した場合、各GUI部品に対して、それぞれ、要因1~3別の描画処理時間を算出し、最も描画処理時間の長いGUI部品から順番に予め定めた個数分のGUI部品を強調表示してもよい。
 各GUI部品の描画処理時間TS(k)は式(5)で表すことができる。
 描画処理時間TS(k)=GUI部品(k)の面積S(k)×定数γ・・・(5)
 面積S(k)=GUI部品(k)の高さk_h×幅k_w
 定数γは、要因1~3に応じて予め定められた値
 例えば、図8に示す再描画領域SD(i)、SD(i-1)以外の領域において、新たにボタンのGUI部品が追加されたとする。この場合、このボタンのGUI部品は要因3に該当し、画像G3(i)は要因1に該当する。したがって、このボタンをk=1、画像G3をk=2とすると、描画処理時間TS(1)=ボタンの面積S(1)×定数γ_3、描画処理時間TS(2)=画像G3(i)の面積S(2)×定数γ_1により算出される。但し、定数γ_1は要因1の定数γを示し、定数γ_3は要因3の定数γを示している。
 また、上記実施の形態では、図6(A)に示すように、フレームF(i)において再描画領域SDは1つである場合を例示したが、フレームF(i)において再描画領域SDは複数存在していてもよい。例えば、図6(A)において、再描画領域SD及びボタンB2以外の領域に新たにボタンB3のGUI部品が加わった場合、そのGUI部品が描画された領域が再描画領域SDとなる。
 この場合、目標再描画領域表示部39は、図6(A)の上側に示す再描画領域SDをSD_1、新たに加わったボタンB3の再描画領域をSD_2とすると、フレームF(i)の描画処理時間TSの計測を開始してから、再描画領域SD_1及び再描画領域SD_2のうち描画終了時刻が遅い方の再描画領域SDの描画が終了した時点で描画処理時間TSの計測を終了して、フレームF(i)の描画処理時間TSとすればよい。
 また、本発明の実施の形態による設計支援装置30が行う各処理は、記憶装置(ROM、RAM、ハードディスク等)に格納された設計支援プログラムを、CPUが実行することによって実現されてもよい。この場合、設計支援プログラムは、記憶媒体を介して記憶装置内にインストールされてもよいし、記憶媒体上から直接実行されてもよい。
 記憶媒体としては、ROM、RAM、及びフラッシュメモリ等の半導体メモリ、フレキシブルディスク及びハードディスク等の磁気ディスクメモリ、CD-ROM、DVD、及びBD等の光ディスクメモリ、並びにメモリカード等が該当する。また、記憶媒体は、電話回線や搬送路等の通信媒体を含む概念である。すなわち、WEBサーバに記憶された設計支援プログラムをCPUが実行することで、設計支援装置30が実現されてもよい。
 なお、図1のブロック図において、設計支援装置30のうち、属性情報記憶部34及びGUI性能情報記憶部36以外の7個のブロックは主にCPUにより実現され、属性情報記憶部34及びGUI性能情報記憶部36は主に記憶装置により実現される。
 また、図1に示す設計支援装置30の各ブロックは、それぞれ集積回路であるLSIとして実現することができる。この場合、各ブロックは個別に1チップ化されてもよいし、全ブロック又は少なくとも1つのブロック毎に1チップ化されてもよい。LSIとしては、IC、システムLSI、スーパーLSI、ウルトラLSIが含まれる。
 設計支援装置30を集積回路で実現する場合、図1に示す設計支援装置30のうち、属性情報記憶部34及びGUI性能情報記憶部36以外のものを集積回路として実現してもよいし、属性情報記憶部34及びGUI性能情報記憶部36を含めて集積回路として実現してもよい。
 また、集積回路化の手法としては、LSIに限定されず、例えば専用回路又は汎用プロセッサで実現してもよい。また、LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)、LSI内部の回路セルの接続及び設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行えばよい。LSIに置き換わる集積回路としては、例えばバイオ技術を用いたものが挙げられる。
 上記の設計支援装置の技術的特徴は下記のようにまとめられる。
 (1)本発明による設計支援装置は、GUI(グラフィカルユーザインターフェイス)の設計を支援する設計支援装置であって、表示対象となるGUIをアニメーション表示するための属性情報を予め記憶する属性情報記憶部と、ユーザが入力装置を用いて描画開始指令を入力した場合、前記属性情報に基づいて、前記GUIの描画処理を開始し、時系列的に前後するフレームの差分画像を再描画することで、前記GUIをアニメーション表示する描画処理部と、前記描画処理部により再描画された領域に基づいて再描画領域を設定し、設定した再描画領域を示す画像を前記GUIに重畳して表示する再描画領域表示部と、前記描画処理部により前記GUIのフレームが更新される毎に、更新されたフレームの描画処理時間を計測し、計測した描画処理時間が所定の基準処理時間を超過した場合、前記基準処理時間以内で描画可能な目標再描画領域を算出し、算出した目標再描画領域を示す画像を、前記描画処理時間が前記基準処理時間を超えたフレームである超過フレームに重畳して表示する目標再描画領域表示部とを備える。
 この構成によれば、各フレームの描画処理時間が計測され、描画処理時間が基準処理時間を超えた超過フレームにおいて、再描画領域をどの程度の大きさにすれば、描画処理時間が基準処理時間を超過しないかを示す目標再描画領域を示す画像が表示される。これにより、ユーザは、超過フレームにおいて、再描画領域をどの程度縮小すれば、超過フレームの描画処理時間が基準処理時間を超過しないかを容易に認識することができる。その結果、GUIを実行するハードウエアやソフトウエアの専門的知識を持たないユーザであっても、GUIの改善点を速やかに認識し、滑らかにアニメーション表示させることのできるGUIを容易に設計することができる。
 (2)前記目標再描画領域表示部は、前記描画処理時間が前記基準処理時間を超過した場合、前記超過フレームよりも後のフレームの前記描画処理部による前記描画処理を停止させることが好ましい。
 この構成によれば、GUIをアニメーション表示した場合に、超過フレームが検出されると、超過フレームが表示された状態でアニメーションが停止される。そのため、ユーザは、どのフレームが超過フレームであるかを容易に認識することができる。また、超過フレームが停止表示され、そこには、再描画領域及び目標再描画領域を示す画像が表示されているため、ユーザは超過フレームを再設計する際にどの程度、再描画領域を縮小すればよいかを容易に認識することができる。
 (3)前記属性情報は、前記GUIを構成するGUI部品の各フレームにおける表示位置及びサイズを示す情報を含み、前記目標再描画領域表示部は、前記描画処理時間が前記基準処理時間を超えた場合、前記超過フレームにおける前記再描画領域が前記超過フレームより1つ前のフレームにおける前記再描画領域よりも拡大しているか否かを判定し、前記再描画領域が拡大したと判定した場合、前記再描画領域の拡大要因となったGUI部品を抽出し、抽出したGUI部品を前記超過フレームにおいて強調表示することが好ましい。
 この構成によれば、ユーザは、超過フレームを再設計する際にどのGUI部品の表示態様を変更すれば、再描画領域を縮小できるかを容易に認識することができる。
 (4)前記属性情報は、前記GUIを構成するGUI部品の各フレームにおける透過度を示す情報を含み、前記目標再描画領域表示部は、前記描画処理時間が前記基準処理時間を超えた場合、前記超過フレームに対応する属性情報と、前記超過フレームより1つ前のフレームに対応する属性情報とを比較し、透過度が非透明から半透明に変化したGUI部品を抽出し、抽出したGUI部品を前記超過フレームにおいて強調表示することが好ましい。
 GUI部品を非透明から半透明に変える場合、GUI部品の背景画像やGUI部品の背後のGUI部品の画像データに対しても画像処理を実行する必要がある等の理由から、描画処理時間を大きく増大させる虞がある。そこで、本実施の形態では、超過フレームにおいて、非透明から半透明に変化したGUI部品が存在する場合、そのGUI部品を強調表示させている。これにより、ユーザは、GUIの設計変更を行う際にどのGUI部品の表示態様を変更すれば、描画処理時間が基準処理時間を下回るかを容易に認識することができる。
 (5)前記属性情報は、前記GUIを構成するGUI部品の各フレームにおける識別情報を含み、前記目標再描画領域表示部は、前記描画処理時間が前記基準処理時間を超えた場合、前記超過フレームに対応する属性情報と、前記超過フレームより1つ前のフレームに対応する属性情報とを比較し、前記超過フレームにおいて新たに描画されたGUI部品を抽出し、抽出したGUI部品を前記超過フレームにおいて強調表示することが好ましい。
 この構成によれば、ユーザは、超過フレームにおいて、新たに追加したGUI部品が、GUIの性能の劣化に寄与していることを容易に認識することができる。
 (6)前記目標再描画領域算出部は、前記目標再描画領域を、「目標再描画領域×定数=基準処理時間」、但し、「定数=1/単位時間あたりの描画処理面積」の関係式を用いて算出することが好ましい。
 この構成によれば、目標再描画領域を上記関係式を用いて明確に規定することができる。
 (7)前記目標再描画領域表示部は、前記描画処理時間が前記基準処理時間を超過した場合、前記描画処理時間と前記基準処理時間との差分を基に、削減するべき描画面積の大きさを示す目標削減領域を算出し、算出した目標削減領域を示す画像を表示することが好ましい。
 この構成によれば、目標削減領域が表示されるため、GUI部品を過剰に縮小するような再設計を防止することができる。
 (8)前記目標再描画領域表示部が計測した各フレームの前記描画処理時間を各フレームにおける属性情報と関連付けて記憶装置に記憶させるGUI性能管理部を更に備えることが好ましい。
 この構成によれば、各フレームの描画処理時間と属性情報とが関連付けて記憶されるため、ユーザは、後から各フレームの描画処理時間と属性情報とを照らし合わせることが可能となり、GUIの改善点を特定する際に便利な情報を提供することができる。
 本発明にかかる設計支援装置は、描画処理時間が基準処理時間を超える超過フレームにおいて、目標再描画領域や性能低下要因であるGUI部品を視覚化してユーザに報知することができるため、その視覚化された情報をもとにしたGUIの改善作業の効率化に有用である。
 

Claims (11)

  1.  GUI(グラフィカルユーザインターフェイス)の設計を支援する設計支援装置であって、
     表示対象となるGUIをアニメーション表示するための属性情報を予め記憶する属性情報記憶部と、
     ユーザが入力装置を用いて描画開始指令を入力した場合、前記属性情報に基づいて、前記GUIの描画処理を開始し、時系列的に前後するフレームの差分画像を再描画することで、前記GUIをアニメーション表示する描画処理部と、
     前記描画処理部により再描画された領域に基づいて再描画領域を設定し、設定した再描画領域を示す画像を前記GUIに重畳して表示する再描画領域表示部と、
     前記描画処理部により前記GUIのフレームが更新される毎に、更新されたフレームの描画処理時間を計測し、計測した描画処理時間が所定の基準処理時間を超過した場合、前記基準処理時間以内で描画可能な目標再描画領域を算出し、算出した目標再描画領域を示す画像を、前記描画処理時間が前記基準処理時間を超えたフレームである超過フレームに重畳して表示する目標再描画領域表示部とを備える設計支援装置。
  2.  前記目標再描画領域表示部は、前記描画処理時間が前記基準処理時間を超過した場合、前記超過フレームよりも後のフレームの前記描画処理部による前記描画処理を停止させる請求項1記載の設計支援装置。
  3.  前記属性情報は、前記GUIを構成するGUI部品の各フレームにおける表示位置及びサイズを示す情報を含み、
     前記目標再描画領域表示部は、前記描画処理時間が前記基準処理時間を超えた場合、前記超過フレームにおける前記再描画領域が前記超過フレームより1つ前のフレームにおける前記再描画領域よりも拡大しているか否かを判定し、前記再描画領域が拡大したと判定した場合、前記再描画領域の拡大要因となったGUI部品を抽出し、抽出したGUI部品を前記超過フレームにおいて強調表示する請求項1又は2記載の設計支援装置。
  4.  前記属性情報は、前記GUIを構成するGUI部品の各フレームにおける透過度を示す情報を含み、
     前記目標再描画領域表示部は、前記描画処理時間が前記基準処理時間を超えた場合、前記超過フレームに対応する属性情報と、前記超過フレームより1つ前のフレームに対応する属性情報とを比較し、透過度が非透明から半透明に変化したGUI部品を抽出し、抽出したGUI部品を前記超過フレームにおいて強調表示する請求項1~3のいずれかに記載の設計支援装置。
  5.  前記属性情報は、前記GUIを構成するGUI部品の各フレームにおける識別情報を含み、
     前記目標再描画領域表示部は、前記描画処理時間が前記基準処理時間を超えた場合、前記超過フレームに対応する属性情報と、前記超過フレームより1つ前のフレームに対応する属性情報とを比較し、前記超過フレームにおいて新たに描画されたGUI部品を抽出し、抽出したGUI部品を前記超過フレームにおいて強調表示する請求項1~4のいずれかに記載の設計支援装置。
  6.  前記目標再描画領域算出部は、前記目標再描画領域を、「目標再描画領域×定数=基準処理時間」、但し、「定数=1/単位時間あたりの描画処理面積」の関係式を用いて算出する請求項1~5のいずれかに記載の設計支援装置。
  7.  前記目標再描画領域表示部は、前記描画処理時間が前記基準処理時間を超過した場合、
    前記描画処理時間と前記基準処理時間との差分を基に、削減するべき描画面積の大きさを示す目標削減領域を算出し、算出した目標削減領域を示す画像を表示する請求項1~6のいずれかに記載の設計支援装置。
  8.  前記目標再描画領域表示部が計測した各フレームの前記描画処理時間を各フレームにおける属性情報と関連付けて記憶装置に記憶させるGUI性能管理部を更に備える請求項1~7のいずれかに記載の設計支援装置。
  9.  GUI(グラフィカルユーザインターフェイス)の設計を支援する設計支援プログラムであって、
     表示対象となるGUIをアニメーション表示するための属性情報を予め記憶する属性情報記憶部と、
     ユーザが入力装置を用いて描画開始指令を入力した場合、前記属性情報に基づいて、前記GUIの描画処理を開始し、時系列的に前後するフレームの差分画像を再描画することで、前記GUIをアニメーション表示する描画処理部と、
     前記描画処理部により再描画された領域に基づいて再描画領域を設定し、設定した再描画領域を示す画像を前記GUIに重畳して表示する再描画領域表示部と、
     前記描画処理部により前記GUIのフレームが更新される毎に、更新されたフレームの描画処理時間を計測し、計測した描画処理時間が所定の基準処理時間を超過した場合、前記基準処理時間以内で描画可能な目標再描画領域を算出し、算出した目標再描画領域を示す画像を、前記描画処理時間が前記基準処理時間を超えたフレームである超過フレームに重畳して表示する目標再描画領域表示部としてコンピュータを機能させる設計支援プログラム。
  10.  GUI(グラフィカルユーザインターフェイス)の設計を支援する設計支援方法であって、
     コンピュータが、ユーザが入力装置を用いて描画開始指令を入力した場合、表示対象となるGUIをアニメーション表示するために予め記憶された属性情報に基づいて、前記GUIの描画処理を開始し、時系列的に前後するフレームの差分画像を再描画することで、前記GUIをアニメーション表示する描画処理ステップと、
     コンピュータが、前記描画処理ステップにより再描画された領域に基づいて再描画領域を設定し、設定した再描画領域を示す画像を前記GUIに重畳して表示する再描画領域表示ステップと、
     コンピュータが、前記描画処理ステップにより前記GUIのフレームが更新される毎に、更新されたフレームの描画処理時間を計測し、計測した描画処理時間が所定の基準処理時間を超過した場合、前記基準処理時間以内で描画可能な目標再描画領域を算出し、算出した目標再描画領域を示す画像を、前記描画処理時間が前記基準処理時間を超えたフレームである超過フレームに重畳して表示する目標再描画領域表示ステップとを備える設計支援方法。
  11.  GUI(グラフィカルユーザインターフェイス)の設計を支援する集積回路であって、
     ユーザが入力装置を用いて描画開始指令を入力した場合、表示対象となるGUIをアニメーション表示するために予め記憶された属性情報に基づいて、前記GUIの描画処理を開始し、時系列的に前後するフレームの差分画像を再描画することで、前記GUIをアニメーション表示する描画処理部と、
     前記描画処理部により再描画された領域に基づいて再描画領域を設定し、設定した再描画領域を示す画像を前記GUIに重畳して表示する再描画領域表示部と、
     前記描画処理部により前記GUIのフレームが更新される毎に、更新されたフレームの描画処理時間を計測し、計測した描画処理時間が所定の基準処理時間を超過した場合、前記基準処理時間以内で描画可能な目標再描画領域を算出し、算出した目標再描画領域を示す画像を、前記描画処理時間が前記基準処理時間を超えたフレームである超過フレームに重畳して表示する目標再描画領域表示部とを備える集積回路。
PCT/JP2011/003597 2010-07-12 2011-06-23 設計支援装置、設計支援プログラム、設計支援方法、及び集積回路 WO2012008099A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US13/395,556 US8683360B2 (en) 2010-07-12 2011-06-23 Support device, computer-readable recording medium, design support method and integrated circuit
CN201180003783.3A CN102483682B (zh) 2010-07-12 2011-06-23 设计辅助装置、设计辅助程序、设计辅助方法以及集成电路
JP2012524411A JP5650740B2 (ja) 2010-07-12 2011-06-23 設計支援装置、設計支援プログラム、設計支援方法、及び集積回路

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010158227 2010-07-12
JP2010-158227 2010-07-12

Publications (1)

Publication Number Publication Date
WO2012008099A1 true WO2012008099A1 (ja) 2012-01-19

Family

ID=45469119

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/003597 WO2012008099A1 (ja) 2010-07-12 2011-06-23 設計支援装置、設計支援プログラム、設計支援方法、及び集積回路

Country Status (4)

Country Link
US (1) US8683360B2 (ja)
JP (1) JP5650740B2 (ja)
CN (1) CN102483682B (ja)
WO (1) WO2012008099A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015079784A1 (ja) * 2013-11-29 2015-06-04 京セラドキュメントソリューションズ株式会社 情報処理装置、画像形成装置、及び情報処理方法
JP2016051373A (ja) * 2014-09-01 2016-04-11 村田機械株式会社 情報処理装置、情報処理方法、及びプログラム
KR20180104658A (ko) * 2016-01-20 2018-09-21 알리바바 그룹 홀딩 리미티드 컬러 트윈 애니메이션을 실현하는 방법 및 장치

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101317532B1 (ko) * 2010-10-13 2013-10-15 주식회사 팬택 마커 또는 마커리스를 융합하는 증강현실 장치 및 방법
CN108629729A (zh) * 2018-04-26 2018-10-09 珠海亿智电子科技有限公司 一种图片显示的方法
US20200204864A1 (en) * 2018-12-20 2020-06-25 Caavo Inc Classification of images based on static components
JP2023007696A (ja) * 2021-07-02 2023-01-19 セイコーエプソン株式会社 画像処理方法および画像処理装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07210652A (ja) * 1994-01-14 1995-08-11 Matsushita Electric Ind Co Ltd 提示情報作成装置
JP2003331311A (ja) * 2002-05-15 2003-11-21 Sharp Corp 動画像生成装置、動画像生成方法、動画像生成プログラムおよび動画像生成プログラムを記録したコンピュータ読取可能な記録媒体
JP2005196669A (ja) * 2004-01-09 2005-07-21 Sony Corp オーサリング方法、オーサリングシステム、データ再生方法及びデータ再生システム
JP2009151693A (ja) * 2007-12-21 2009-07-09 Nippon Telegr & Teleph Corp <Ntt> 一括表示画像出力装置、一括表示画像出力方法、コンピュータプログラム及び記録媒体

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5715416A (en) * 1994-09-30 1998-02-03 Baker; Michelle User definable pictorial interface for a accessing information in an electronic file system
US5973694A (en) * 1995-06-02 1999-10-26 Chatham Telecommunications, Inc., Method of communication using sized icons, text, and audio
US7289669B2 (en) * 2000-06-23 2007-10-30 Matsushita Electric Industrial Co., Ltd. Data managing method and apparatus for providing divisional data
US20030107604A1 (en) * 2001-12-12 2003-06-12 Bas Ording Method and system for automatic window resizing in a graphical user interface
US7398478B2 (en) * 2003-11-14 2008-07-08 Microsoft Corporation Controlled non-proportional scaling display
TWI284886B (en) * 2005-06-20 2007-08-01 Benq Corp A method for displaying a resized window
US7933956B2 (en) * 2006-01-24 2011-04-26 Simulat, Inc. System and method to create a collaborative web-based multimedia layered platform
US8314799B2 (en) * 2007-04-13 2012-11-20 Apple Inc. Enhanced motion behavior framework
JP2010049313A (ja) * 2008-08-19 2010-03-04 Sony Corp 画像処理装置、画像処理方法、プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07210652A (ja) * 1994-01-14 1995-08-11 Matsushita Electric Ind Co Ltd 提示情報作成装置
JP2003331311A (ja) * 2002-05-15 2003-11-21 Sharp Corp 動画像生成装置、動画像生成方法、動画像生成プログラムおよび動画像生成プログラムを記録したコンピュータ読取可能な記録媒体
JP2005196669A (ja) * 2004-01-09 2005-07-21 Sony Corp オーサリング方法、オーサリングシステム、データ再生方法及びデータ再生システム
JP2009151693A (ja) * 2007-12-21 2009-07-09 Nippon Telegr & Teleph Corp <Ntt> 一括表示画像出力装置、一括表示画像出力方法、コンピュータプログラム及び記録媒体

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015079784A1 (ja) * 2013-11-29 2015-06-04 京セラドキュメントソリューションズ株式会社 情報処理装置、画像形成装置、及び情報処理方法
JPWO2015079784A1 (ja) * 2013-11-29 2017-03-16 京セラドキュメントソリューションズ株式会社 情報処理装置、画像形成装置、及び情報処理方法
US10091367B2 (en) 2013-11-29 2018-10-02 Kyocera Document Solutions Inc. Information processing device, image forming apparatus and information processing method
JP2016051373A (ja) * 2014-09-01 2016-04-11 村田機械株式会社 情報処理装置、情報処理方法、及びプログラム
KR20180104658A (ko) * 2016-01-20 2018-09-21 알리바바 그룹 홀딩 리미티드 컬러 트윈 애니메이션을 실현하는 방법 및 장치
KR102208183B1 (ko) * 2016-01-20 2021-01-29 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. 컬러 트윈 애니메이션을 실현하는 방법 및 장치
US10930026B2 (en) 2016-01-20 2021-02-23 Advanced New Technologies Co., Ltd. Method and apparatus for realizing color tween animation
US11328459B2 (en) 2016-01-20 2022-05-10 Advanced New Technologies Co., Ltd. Method and apparatus for realizing color tween animation

Also Published As

Publication number Publication date
CN102483682B (zh) 2015-09-30
JP5650740B2 (ja) 2015-01-07
US20120198370A1 (en) 2012-08-02
US8683360B2 (en) 2014-03-25
CN102483682A (zh) 2012-05-30
JPWO2012008099A1 (ja) 2013-09-05

Similar Documents

Publication Publication Date Title
JP5650740B2 (ja) 設計支援装置、設計支援プログラム、設計支援方法、及び集積回路
JP6038171B2 (ja) ユーザインタフェース装置
US10289291B2 (en) Editing nested video sequences
US10347027B2 (en) Animated transition between data visualization versions at different levels of detail
US11720230B2 (en) Interactive data visualization user interface with hierarchical filtering based on gesture location on a chart
US8068103B2 (en) User-interface design
US8205169B1 (en) Multiple editor user interface
US20140278088A1 (en) Navigation Device
JPWO2011158446A1 (ja) アニメーション制御装置、アニメーション制御方法およびアニメーション制御プログラム
CN110085194B (zh) 医用图像显示装置和用于医用图像显示装置的控制方法
US10347018B2 (en) Interactive data visualization user interface with hierarchical filtering based on gesture location on a chart
CN112541960A (zh) 三维场景的渲染方法、装置及电子设备
CN107615229B (zh) 用户界面装置和用户界面装置的画面显示方法
CN115081384B (zh) 一种基于eda的数据动态可视化系统
AU2021204190B2 (en) Interactive data visualization user interface with gesture-based data field selection
JP5114249B2 (ja) 表示装置および表示方法
JP2012094091A (ja) 表示制御装置、表示制御方法及びそのプログラム
JP2008017065A (ja) 電子黒板装置および電子黒板装置における画像処理方法並びにそのプログラム
JP5387900B2 (ja) 波形表示装置
JP5510253B2 (ja) 図形表示装置およびプログラム
KR20160115214A (ko) 디스플레이 장치 및 그의 디스플레이 방법
KR20230070408A (ko) 편집 환경에서 다수의 미디어 요소들을 갖는 미디어 콘텐츠를 제시하기 위한 방법들 및 시스템들
JP5962696B2 (ja) 図形表示装置およびプログラム
JP2015210694A (ja) オーサリング装置、方法及びプログラム
CN115167963A (zh) 一种基于h5的多层级窗口快速响应的方法及存储介质

Legal Events

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

Ref document number: 201180003783.3

Country of ref document: CN

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

Ref document number: 11806436

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2012524411

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 13395556

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11806436

Country of ref document: EP

Kind code of ref document: A1