1461121495-1951b90a-c7f0-468c-a843-1a195a3ef9c2

1. A resistor string digital-to-analog converter comprising:
an input terminal receiving a digital input signal in digital code;
an output terminal revealing an analog output signal in analog voltage;
a first plurality of voltage-acquisition nodes including a first pair of nodes which is adjacent to each other;
a first plurality of resistors being connected in series via the first plurality of voltage-acquisition nodes;
a second pair of nodes revealing a pair of analog voltages;
a high-order voltage-acquisition circuit providing conduction between a respective one of the first pair of nodes and a respective one of the second pair of nodes in accordance with the digital input signal;
a low-order converter generating the analog output signal, which is obtained by interpolating one and the other of the pair of analog voltages in accordance with the digital input signal.
2. The resistor string digital-to-analog converter of claim 1, wherein the high-order voltage-acquisition circuit includes a first plurality of switches, at least some of the first plurality of switches each coupling between the respective one of the first pair of nodes and the respective one of the second pair of nodes, and
wherein a determination relating to whether each of the first plurality of switches is on or off is made based on the digital input signal.
3. The resistor string digital-to-analog converter of claim 1, wherein the low-order converter includes a second plurality of resistors being connected between one and the other of the second pair of nodes in series via a second plurality of voltage-acquisition nodes.
4. The resistor string digital-to-analog converter of claim 3, wherein the low-order converter includes a second plurality of switches, at least some of the second plurality of switches coupling between one of the second plurality of voltage-acquisition nodes and the output terminal, and
wherein a determination relating to whether each of the second plurality of switches is on or off is made based on the digital input signal.
5. A resistor string digital-to-analog converter, comprising:
an input terminal configured to receive a digitally coded digital input signal;
an output terminal configured to output an analog output voltage signal;
a plurality of voltage-acquisition nodes;
a plurality of resistors which are connected in series via the plurality of voltage-acquisition nodes;
a pair of intermediate nodes, wherein a first intermediate node of the pair of intermediate nodes is associated with a first intermediate analog voltage and a second intermediate node of the pair of intermediate nodes is associated with a second intermediate analog voltage;
a high-order voltage-acquisition circuit configured to provide conduction between the plurality of voltage-acquisition nodes and the pair of intermediate nodes based on the digital input signal; and
a low-order converter configured to generate the analog output voltage signal by interpolating the first intermediate analog voltage and the second intermediate analog voltage based on the digital input signal.
6. The resistor string digital-to-analog converter of claim 5, wherein the high-order voltage-acquisition circuit includes a first plurality of switches, each of the first plurality of switches corresponding to a respective one of the plurality of voltage-acquisition nodes, and
wherein a determination relating to whether each of the first plurality of switches is on or off is made based on the digital input signal.
7. The resistor string digital-to-analog converter of claim 6, wherein the high-order voltage-acquisition circuit further includes a second plurality of switches, a first pair of the second plurality of switches corresponding to the first intermediate node, and a second pair of the second plurality of switches corresponding to the second intermediate node, and
wherein a determination relating to whether each of the second plurality of switches is on or off is made based on the digital input signal.
8. The resistor string digital-to-analog converter of claim 7, wherein the low-order converter includes a third plurality of switches, and
wherein a determination relating to whether each of the third plurality of switches is on or off is made based on the digital input signal and the first and second intermediate analog voltages.
9. A resistor string digital-to-analog converter, comprising:
an input terminal receiving a digitally coded digital input signal;
an output terminal outputting an analog output voltage signal;
a first plurality of resistors being connected in series;
a low-order converter including a first low-order voltage input terminal and a second low-order voltage input terminal, and generating the analog output voltage signal by interpolating an analog voltage input to the first low-order voltage input terminal and an analog voltage input to the second low-order voltage input terminal based on the digital input signal; and
a high-order voltage-acquisition circuit providing conduction between one terminal of one resistor of the first plurality of resistors and the first low-order voltage input terminal, and between the other terminal of the resistor of the first plurality of resistors and the second low-order voltage input terminal based on the digital input signal;
10. The resistor string digital-to-analog converter of claim 9, wherein the high-order voltage-acquisition circuit includes a first plurality of switches, each of the first plurality of switches corresponding to a respective one of terminals of the first plurality of resistors, and
wherein a determination relating to whether each of the first plurality of switches is on or off is made based on the digital input signal.
11. The resistor string digital-to-analog converter of claim 10, wherein the high-order voltage-acquisition circuit further includes a second plurality of switches which includes a first pair of the second plurality of switches corresponding to the one terminal, and a second pair of the second plurality of switches corresponding to the other terminal, and
wherein a determination relating to whether each of the second plurality of switches is on or off is made based on the digital input signal.
12. The resistor string digital-to-analog converter of claim 11, wherein the low-order converter includes a third plurality of switches, and
wherein a determination relating to whether each of the third plurality of switches is on or off is made based on the digital input signal and the analog voltages input to the first low-order voltage input terminal and the second low-order voltage input terminal.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. Computer-implemented method for designing a three-dimensional modeled object, wherein the method comprises the steps of:
user-interacting with a screen;
defining a stroke corresponding to the user-interacting;
discretizing the stroke into a set of points;
projecting the set of points onto at least one support in a three-dimensional scene;
constructing the three-dimensional modeled object from the projected set of points and the said at least one support.
2. The method of claim 1, further comprising a step of constructing a visualization of the three-dimensional modeled object by:
computing, for each point of the projected set of points, at least two offset points, an offset point being a point positioned on said at least one support and spaced from said each point; and
computing a surface delineated by the computed at least two offset points, the surface comprising the projected set of points.
3. The method of claim 2, wherein the computing of at least two offset points comprises:
computing a poly-line linking the points of the projected set of points;
computing, for each point of the projected set of points, an offset vector {right arrow over (O)}=\u03b1*({right arrow over (n)}{right arrow over (L)}), wherein \u03b1 is a coefficient, {right arrow over (n)} is a unit vector normal to the support, {right arrow over (L)} is a vector defined by a line linking two points of the set of points forming the polyligne, {right arrow over (n)} and {right arrow over (L)} having as common origin the said each point;
determining the said at least two offset points from the offset vector {right arrow over (O)}; and
projecting the determined said at least two offset points onto said at least one support in a three-dimensional scene.
4. The method of claim 2, further comprising a step of tessellating said computed surface delineated by the computed offset.
5. The method of claim 2, wherein the step of constructing the visualization further comprises applying a shader for rendering said computed surface.
6. The method of claim 1, wherein the steps of the method are repeated with at least another one support in the three-dimensional scene.
7. A computer-implemented method for designing a three-dimensional geometrical modeled object, the method comprising the steps of:
providing a set of three-dimensional modeled objects designed by:
user-interacting with a screen;
defining a stroke corresponding to the user-interacting;
discretizing the stroke into a set of points;
projecting the set of points onto at least one support in a three-dimensional scene;
constructing the three-dimensional modeled object from the projected set of points and the said at least one support;
extracting the points of the provided set of three-dimensional modeled objects;
computing a geometrical smooth curve from the extracted points;
constructing a three-dimensional geometrical modeled object from the geometrical smooth curve.
8. The computer-implemented method of claim 7, wherein, at the step of extracting, the points are extracted according to the support on which the points are projected.
9. The computer-implemented method of claim 7, wherein the step of extracting further comprises:
user-interacting with the screen;
defining a stroke corresponding to the user-interacting;
retrieving, among the extracted points, one of three-dimensional modeled objects of the provided set of three-dimensional modeled objects and at least one support of said one of three-dimensional modeled objects retrieved;
discretizing the stroke corresponding to the user-interacting into a set of points;
projecting the points of the set of points onto the said at least one retrieved support.
10. The computer-implemented method of claim 9, wherein the step of retrieving further comprises retrieving the closest three-dimensional modeled object from a pick path starting from a cursor.
11. The computer-implemented method of claim 10, wherein the pick path comprises a ray cast from the cursor.
12. The computer-implemented method of claim 7, wherein the steps of extracting, computing and constructing are repeated for each provided three dimensional modeled objects.
13. The computer-implemented method of claim 9, wherein the steps of extracting, computing and constructing are repeated while the user interacts with the screen.
14. A computer readable storage medium having recorded thereon a computer program, for designing a three-dimensional modeled object, the computer program comprising computer code for
user-interacting with a screen;
defining a stroke corresponding to the user-interacting;
discretizing the stroke into a set of points;
projecting the set of points onto at least one support in a three-dimensional scene;
constructing the three-dimensional modeled object from the projected set of points and the said at least one support.
15. A computer readable storage medium having recorded thereon a computer program, for designing a three-dimensional geometrical modeled object, the computer program comprising computer code for:
providing a set of three-dimensional modeled objects designed by:
user-interacting with a screen;
defining a stroke corresponding to the user-interacting;
discretizing the stroke into a set of points;
projecting the set of points onto at least one support in a three-dimensional scene;
constructing the three-dimensional modeled object from the projected set of points and the said at least one support;
extracting the points of the provided set of three-dimensional modeled objects;
computing a geometrical smooth curve from the extracted points;
constructing a three-dimensional geometrical modeled object from the geometrical smooth curve.

1461121486-80928341-619f-4e68-9d7e-9748d8903b3c

1. A computer-readable medium holding executable instructions that when executed on a processor generate computer program instructions, the medium holding instructions for:
analyzing components in a simulatable block diagram model, the analyzing:
identifying components that are critical to control of a hardware device, and
identifying components that are not critical to control of the hardware device;

marking the components identified as critical to control of the hardware device as critical components;
marking the components identified as not critical to control of the hardware device as non-critical components; and
generating the computer program instructions for the simulatable block diagram model with an automatic code generator, the computer program instructions implementing behavior of the block diagram model, the generating including:
generating computer program instructions for only the components of the block diagram model marked as critical.
2. The computer-readable medium of claim 1, further comprising:
storing data associated with the components that are not critical to control of the hardware device.
3. The computer-readable medium of claim 1, where the components that are not critical to control of the hardware device are included in a user interface for the hardware device.
4. The computer-readable medium of claim 1, further comprising:
receiving a user input related to one or more components that are critical to control of the hardware device.
5. The computer-readable medium of claim 4, further comprising:
receiving a user input related to one or more components that are not critical to control of the hardware device.
6. The computer-readable medium of claim 1, further comprising:
receiving a user input via a graphical user interface, the user input related to:
one or more components that are critical to control of the hardware device, or
one or more components that are not critical to control of the hardware device.
7. The computer-readable medium of claim 1, where the model includes non-critical portions that are post-processing units.
8. The computer-readable medium of claim 7, the post-processing units are logical units of the model that have no synchronized data outputs feeding non-post-processing portions of the model.
9. The computer-readable medium of claim 1, wherein the generating further comprises:
establishing an inter-process communication link between the generated computer program instructions and non-critical portions of the model.
10. The computer-readable medium of claim 9, further comprising:
receiving output from the generated computer program instructions via the inter-process communications link.
11. The computer-readable medium of claim 10, further comprising:
executing the computer program instructions on a target processor associated with a target.
12. The computer-readable medium of claim 10, further comprising:
processing the output in non-critical portions of the model.
13. A computer-readable medium holding executable instructions that when executed on a processor generate computer program instructions, the medium holding instructions for:
displaying a graphical user interface, the graphical user interface for:
displaying components in a simulatable block diagram model,
receiving a first user input related to a component that is critical to control of a hardware device, or
receiving a second user input related to a component that is not critical to control of a hardware device;

marking components identified as critical to control of the hardware device as critical components; and
generating computer program instructions for the simulatable block diagram model via an automatic code generator, where the computer program instructions implement behavior of the block diagram model on the hardware device when the hardware device executes the generated computer program instructions, the generating including:
generating computer program instructions for the components of the block diagram model that are marked as critical, and
maintaining an interface to components that are not critical to the control of the hardware device.
14. The computer-readable medium of claim 13, further comprising:
not generating computer program instructions for components that are not critical to control of the hardware device.
15. The computer-readable medium of claim 13, further comprising:
marking components identified as non-critical to control of the hardware device as non-critical components.
16. The computer-readable medium of claim 13, further comprising:
allocating memory for components that are not critical to control of the hardware device.
17. The computer-readable medium of claim 13, further comprising:
sending the generated computer program instructions to a target device.
18. A computer-implemented method, comprising:
displaying a graphical user interface, the graphical user interface for:
displaying components in a simulatable block diagram model, the components being:
critical components that are critical to control of a hardware device, or
non-critical components that are not critical to control of the hardware device

receiving a first user input related to a critical component, and
receiving a second user input related to a non-critical component;

marking components identified as critical to control of the hardware device as critical components;
marking components identified as non-critical to control of the hardware device as non-critical components; and
generating computer program instructions for the simulatable block diagram model via an automatic code generator, where the computer program instructions implement behavior of the block diagram model on the hardware device, the generating including:
generating computer program instructions for critical components, and
not generating computer program instructions for non-critical components.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method comprising:
organizing, by a computing device, a plurality of tabs of a computer program running on the computing device and a plurality of tab groups within which the tabs are organized over a hierarchy having three or more hierarchical levels, the computer program to manage a plurality of servers organized over a corresponding server hierarchy of server groups culminating in one or more server domains at a top of the corresponding server hierarchy, each tab corresponding to one of the servers, each tab group corresponding to one of the server groups,
where a lowest hierarchical level corresponds to the tabs, a second lowest hierarchical level corresponds to the tab groups that each directly encompass a subset of the tabs, and a highest hierarchical level corresponds to the tab groups that each directly encompass a subset of the tab groups lower in the hierarchy, the tab groups of the highest hierarchical level corresponding to the server domains;

displaying, by the computing device, a plurality of tab headers that each correspond to one of the tabs or one of the tab groups, on a screen in a top-down manner in correspondence with the hierarchy,
where the tab headers corresponding to the tabs in the lowest hierarchical level are displayed at a bottom of a predetermined area on the screen, the tab headers corresponding to the tab groups in the second lowest hierarchical level are displayed completely above the tab headers corresponding to the tabs in the lowest hierarchical level, and the tab headers corresponding to the tab groups in the highest hierarchical level are displayed completely above the tab headers corresponding to the tabs in the second lowest hierarchical level,
where each tab header corresponding to one of the tab groups has a width no less than a total of widths of the tab headers corresponding to the tabs or to the tab groups in the hierarchical level immediately below the one of the tab groups;

reducing, by the computing device, horizontal space occupied by the tab headers on the screen by selectively displaying a full version of each tab header or a slim version of each tab header, the full version of each tab header being greater in height than the slim version of each tab header; and
managing, by the computing device, under the control of an administrator, the servers via interactive selection of the tab headers, where a current server of the servers is displayed and is managed by the administrator upon selection of the tab to which the server corresponds,
wherein reducing the horizontal space occupied by the tab headers comprises:
displaying the full version of each tab header corresponding to one of the tab groups within the highest hierarchical level and displaying the slim version of each tab header corresponding to one of the tab groups not within the highest hierarchical level or to one of the tabs;
as an entry point of the method, responsive to user selection of a given tab header being selected, displaying the full version of the given tab header and displaying the slim version of each tab header other than the given tab header; and
repeating the method at the entry point as different user selections of different given tab headers are made.
2. The method of claim 1, wherein the full version of each tab header includes text labeling the tab header, and the slim version of each tab header does not include the text.
3. The method of claim 1, wherein the full version of each tab header includes both graphics and text labeling the tab header, and the slim version of each tab header does not include both the graphics and the text.
4. The method of claim 1, wherein organizing the tabs comprises retrieving the corresponding server hierarchy over which the servers are organized among the server groups culminating in the one or more server domains, creating the tabs in correspondence with the server, creating the tab groups in correspondence with the server groups, generating the hierarchy in correspondence with the server hierarchy, and organizing the tabs and the tab groups in correspondence with the hierarchy.
5. A computing device comprising:
a processor; and
a non-transitory computer-readable data storage medium to store a computer executable by the processor, wherein the computer program is to:
organize a plurality of tabs and a plurality of tab groups within which the tabs are organized over a hierarchy having three or more hierarchical levels, the computer program to manage a plurality of servers organized over a corresponding server hierarchy of server groups culminating in one or more server domains at a top of the corresponding server hierarchy, each tab corresponding to one of the servers, each tab group corresponding to one of the server groups,
where a lowest hierarchical level corresponds to the tabs, a second lowest hierarchical level corresponds to the tab groups that each directly encompass a subset of the tabs, and a highest hierarchical level corresponds to the tab groups that each directly encompass a subset of the tab groups lower in the hierarchy, the tab groups of the highest hierarchical level corresponding to the server domains;

display a plurality of tab headers that each correspond to one of the tabs or one of the tab groups, on a screen in a top-down manner in correspondence with the hierarchy,
where the tab headers corresponding to the tabs in the lowest hierarchical level are displayed at a bottom of a predetermined area on the screen, the tab headers corresponding to the tab groups in the second lowest hierarchical level are displayed completely above the tab headers corresponding to the tabs in the lowest hierarchical level, and the tab headers corresponding to the tab groups in the highest hierarchical level are displayed completely above the tab headers corresponding to the tabs in the second lowest hierarchical level,
where each tab header corresponding to one of the tab groups has a width no less than a total of widths of the tab headers corresponding to the tabs or to the tab groups in the hierarchical level immediately below the one of the tab groups;

reduce horizontal space occupied by the tab headers on the screen by selectively displaying a full version of each tab header or a slim version of each tab header, the full version of each tab header being greater in height than the slim version of each tab header; and
manage, under the control of an administrator, the servers via interactive selection of the tab headers, where a current server of the servers is displayed and is managed by the administrator upon selection of the tab to which the server corresponds,
wherein the horizontal space occupied by the tab headers is reduced by:
displaying the full version of each tab header corresponding to one of the tab groups within the highest hierarchical level and displaying the slim version of each tab header corresponding to one of the tab groups not within the highest hierarchical level or to one of the tabs;
as an entry point, responsive to user selection of a given tab header being selected, displaying the full version of the given tab header and displaying the slim version of each tab header other than the given tab header; and
proceeding back to the entry point as different user selections of different given tab headers are made.
6. The computing device of claim 5, wherein the full version of each tab header includes text labeling the tab header, and the slim version of each tab header does not include the text.
7. The computing device of claim 5, wherein the full version of each tab header includes both graphics and text labeling the tab header, and the slim version of each tab header does not include both the graphics and the text.
8. The computing device of claim 5, wherein the tabs are organized by retrieving the corresponding server hierarchy over which the servers are organized among the server groups culminating in the one or more server domains, creating the tabs in correspondence with the server, creating the tab groups in correspondence with the server groups, generating the hierarchy in correspondence with the server hierarchy, and organizing the tabs and the tab groups in correspondence with the hierarchy.
9. A non-transitory computer program product comprising a storage device storing a computer program executable by a processor of a computing device to perform a method comprising:
organizing a plurality of tabs of a computer program running on the computing device and a plurality of tab groups within which the tabs are organized over a hierarchy having three or more hierarchical levels, the computer program to manage a plurality of servers organized over a corresponding server hierarchy of server groups culminating in one or more server domains at a top of the corresponding server hierarchy, each tab corresponding to one of the servers, each tab group corresponding to one of the server groups,
where a lowest hierarchical level corresponds to the tabs, a second lowest hierarchical level corresponds to the tab groups that each directly encompass a subset of the tabs, and a highest hierarchical level corresponds to the tab groups that each directly encompass a subset of the tab groups lower in the hierarchy, the tab groups of the highest hierarchical level corresponding to the server domains;

displaying a plurality of tab headers that each correspond to one of the tabs or one of the tab groups, on a screen in a top-down manner in correspondence with the hierarchy,
where the tab headers corresponding to the tabs in the lowest hierarchical level are displayed at a bottom of a predetermined area on the screen, the tab headers corresponding to the tab groups in the second lowest hierarchical level are displayed completely above the tab headers corresponding to the tabs in the lowest hierarchical level, and the tab headers corresponding to the tab groups in the highest hierarchical level are displayed completely above the tab headers corresponding to the tabs in the second lowest hierarchical level,
where each tab header corresponding to one of the tab groups has a width no less than a total of widths of the tab headers corresponding to the tabs or to the tab groups in the hierarchical level immediately below the one of the tab groups;

reducing horizontal space occupied by the tab headers on the screen by selectively displaying a full version of each tab header or a slim version of each tab header, the full version of each tab header being greater in height than the slim version of each tab header; and
managing, under the control of an administrator, the servers via interactive selection of the tab headers, where a current server of the servers is displayed and is managed by the administrator upon selection of the tab to which the server corresponds,
wherein reducing the horizontal space occupied by the tab headers comprises:
displaying the full version of each tab header corresponding to one of the tab groups within the highest hierarchical level and displaying the slim version of each tab header corresponding to one of the tab groups not within the highest hierarchical level or to one of the tabs;
as an entry point of the method, responsive to user selection of a given tab header being selected, displaying the full version of the given tab header and displaying the slim version of each tab header other than the given tab header; and
repeating the method at the entry point as different user selections of different given tab headers are made.
10. The computer program product of claim 9, wherein the full version of each tab header includes text labeling the tab header, and the slim version of each tab header does not include the text.
11. The computer program product of claim 9, wherein the full version of each tab header includes both graphics and text labeling the tab header, and the slim version of each tab header does not include both the graphics and the text.
12. The computer program product of claim 9, wherein organizing the tabs comprises retrieving the corresponding server hierarchy over which the servers are organized among the server groups culminating in the one or more server domains, creating the tabs in correspondence with the server, creating the tab groups in correspondence with the server groups, generating the hierarchy in correspondence with the server hierarchy, and organizing the tabs and the tab groups in correspondence with the hierarchy.