**2. User Interface**

The user can draw on the diagram template using a pen as if drawing on real paper. Our system shows the name of each coronary artery and segment (e.g., proximal, middle, or dis‐ tal) at the upper right of the screen when the cursor is over any vessel. We use the naming scheme defined in the AHA committee report. The system can show border lines of coro‐ nary artery segments if required.

"move coronary artery" mode from the tool palette (Figure 5 (b)). The user can deform an artery by dragging it with the pen (Figure 5 (c)) after choosing the "pull coronary artery" mode from the tool palette. We use a pulling interface for a curve that was introduced in [13]. It deforms a curve while preserving the local geometry. The user can also set the line width to small, normal, or large, using a pop-up panel (Figure 6). This system also supports

Generating Graphical Reports on Cardiac Catheterization

http://dx.doi.org/10.5772/54235

371

**Figure 5.** Editing operations on a coronary artery. (a) Draw a new coronary artery; (b) Move a coronary artery; (c) Pull a

(a) (b) (c)

**Figure 6.** The user can set the line width to small, normal, or large, using a pop-up panel. (a) Small; (b) Normal; (c)

the `absent' display, as shown in Figure 7.

coronary artery

Large

(a)

**Figure 7.** The system also supports the `absent' display

(b) (c)

Our system is a Windows application that provides a familiar interface to permit new users to work with it without extensive training. For example, the system displays a pop-up menu when the user clicks on a window while pressing the barrel button on the pen (Figure 4). This section describes the user interaction steps one by one. The next sec‐ tion describes our algorithm.

**Figure 4.** Barrel button on pen.

#### **2.1. Insertion / editing of a vessel**

Upon start-up, our system displays a default cardiac catheterization coronary schema. The user can then draw a finding report or a treatment plan on the schema. The system provides several functions for editing the geometry on screen, including adding, deleting, and de‐ forming arteries.

The user can draw a new coronary artery with the pen after choosing the "draw coronary artery" mode from the tool palette on the right (Figure 5 (a)). The system automatically cre‐ ates an appropriate junction where the new artery is connected to another, and tapers the free end. The user can delete a vessel by clicking on it while holding the barrel button down and choosing "delete" from a pop-up menu. The system automatically updates the display on the screen. The user can move an artery by dragging it with the pen after choosing the "move coronary artery" mode from the tool palette (Figure 5 (b)). The user can deform an artery by dragging it with the pen (Figure 5 (c)) after choosing the "pull coronary artery" mode from the tool palette. We use a pulling interface for a curve that was introduced in [13]. It deforms a curve while preserving the local geometry. The user can also set the line width to small, normal, or large, using a pop-up panel (Figure 6). This system also supports the `absent' display, as shown in Figure 7.

**Figure 5.** Editing operations on a coronary artery. (a) Draw a new coronary artery; (b) Move a coronary artery; (c) Pull a coronary artery

**Figure 6.** The user can set the line width to small, normal, or large, using a pop-up panel. (a) Small; (b) Normal; (c) Large

**Figure 7.** The system also supports the `absent' display

**2. User Interface**

370 Artery Bypass

nary artery segments if required.

tion describes our algorithm.

**Figure 4.** Barrel button on pen.

forming arteries.

**2.1. Insertion / editing of a vessel**

The user can draw on the diagram template using a pen as if drawing on real paper. Our system shows the name of each coronary artery and segment (e.g., proximal, middle, or dis‐ tal) at the upper right of the screen when the cursor is over any vessel. We use the naming scheme defined in the AHA committee report. The system can show border lines of coro‐

Our system is a Windows application that provides a familiar interface to permit new users to work with it without extensive training. For example, the system displays a pop-up menu when the user clicks on a window while pressing the barrel button on the pen (Figure 4). This section describes the user interaction steps one by one. The next sec‐

Upon start-up, our system displays a default cardiac catheterization coronary schema. The user can then draw a finding report or a treatment plan on the schema. The system provides several functions for editing the geometry on screen, including adding, deleting, and de‐

The user can draw a new coronary artery with the pen after choosing the "draw coronary artery" mode from the tool palette on the right (Figure 5 (a)). The system automatically cre‐ ates an appropriate junction where the new artery is connected to another, and tapers the free end. The user can delete a vessel by clicking on it while holding the barrel button down and choosing "delete" from a pop-up menu. The system automatically updates the display on the screen. The user can move an artery by dragging it with the pen after choosing the

### **2.2. Recording of stenoses**

Once the user has sketched the geometry of the coronary arteries, he or she can record sten‐ oses. To do this, the user chooses the "draw stenosis" mode from the tool palette and draws the stenosis on the target artery with the pen (Figure 8 (a)). When the user completes draw‐ ing and lifts the pen from the screen, the system displays a dialog box to specify the type and severity of the stenosis (Figure 8 (b)). If the user wants to change the properties of an existing stenosis, he or she can open the properties window by clicking on the affected ar‐ tery while holding the barrel button down. The display of each stenosis on the screen in‐ cludes the severity specified by the user (Figure 8 (c)).

**2.3. Bypasses and collateral**

to a new collateral.

**Figure 11.** Example of recording a collateral.

**2.4. Stent**

the artery segments.

The user can add a bypass to the schema by drawing a line connecting coronary arteries. If the bypass connects an open artery to a closed one, the system automatically opens the blockage to indicate that blood flow has been restored (Figure 10 (b)). The user can place a stenosis on a by‐

Generating Graphical Reports on Cardiac Catheterization

http://dx.doi.org/10.5772/54235

373

The user can draw a collateral (new blood vessels that reroute blood flow around a stenosis) by drawing a line between coronary arteries. This appears as an arrow in the schema (Figure 11). Our current implementation does not modify the blood flow automatically in response

pass just like on a coronary artery and can also delete, move, and pull a bypass.

(a) (b) (c)

cally opens the closed coronary artery to indicate that blood flow has resumed (b, c).

**Figure 10.** Drawing a bypass. If the bypass connects an open coronary artery to a closed one (a), the system automati‐

The user can place a stent in a coronary artery (Figure 12). Recording of stents is very impor‐ tant for documenting the treatment of the stenosis. The procedure for editing a stent is iden‐ tical to that for editing a stenosis. The user creates and moves a stent by dragging it along a coronary artery and deletes it using a pop-up menu. The stent also snaps to the borders of

The user can also move an existing stenosis by dragging it along the coronary artery (Figure 9). The stenosis snaps to the border of the appropriate section of the artery as it moves.

If the severity of a stenosis is set to 100%, the portion of the artery beyond the stenosis is shown as a thin line (Figure 10 (a)) representing a complete blockage where no blood flows. The system automatically analyzes the tree structure of arteries and closes any downstream vessels as well.

**Figure 8.** Recording a stenosis. When the user draws a stenosis (a), the system displays a dialog box to specify the type and severity of the stenosis (b, c).

**Figure 9.** The user can move an existing stenosis by dragging it along the coronary artery.

### **2.3. Bypasses and collateral**

**2.2. Recording of stenoses**

372 Artery Bypass

vessels as well.

and severity of the stenosis (b, c).

cludes the severity specified by the user (Figure 8 (c)).

Once the user has sketched the geometry of the coronary arteries, he or she can record sten‐ oses. To do this, the user chooses the "draw stenosis" mode from the tool palette and draws the stenosis on the target artery with the pen (Figure 8 (a)). When the user completes draw‐ ing and lifts the pen from the screen, the system displays a dialog box to specify the type and severity of the stenosis (Figure 8 (b)). If the user wants to change the properties of an existing stenosis, he or she can open the properties window by clicking on the affected ar‐ tery while holding the barrel button down. The display of each stenosis on the screen in‐

The user can also move an existing stenosis by dragging it along the coronary artery (Figure 9). The stenosis snaps to the border of the appropriate section of the artery as it moves.

If the severity of a stenosis is set to 100%, the portion of the artery beyond the stenosis is shown as a thin line (Figure 10 (a)) representing a complete blockage where no blood flows. The system automatically analyzes the tree structure of arteries and closes any downstream

(a) (b) (c)

**Figure 8.** Recording a stenosis. When the user draws a stenosis (a), the system displays a dialog box to specify the type

**Figure 9.** The user can move an existing stenosis by dragging it along the coronary artery.

The user can add a bypass to the schema by drawing a line connecting coronary arteries. If the bypass connects an open artery to a closed one, the system automatically opens the blockage to indicate that blood flow has been restored (Figure 10 (b)). The user can place a stenosis on a by‐ pass just like on a coronary artery and can also delete, move, and pull a bypass.

The user can draw a collateral (new blood vessels that reroute blood flow around a stenosis) by drawing a line between coronary arteries. This appears as an arrow in the schema (Figure 11). Our current implementation does not modify the blood flow automatically in response to a new collateral.

**Figure 10.** Drawing a bypass. If the bypass connects an open coronary artery to a closed one (a), the system automati‐ cally opens the closed coronary artery to indicate that blood flow has resumed (b, c).

**Figure 11.** Example of recording a collateral.

#### **2.4. Stent**

The user can place a stent in a coronary artery (Figure 12). Recording of stents is very impor‐ tant for documenting the treatment of the stenosis. The procedure for editing a stent is iden‐ tical to that for editing a stenosis. The user creates and moves a stent by dragging it along a coronary artery and deletes it using a pop-up menu. The stent also snaps to the borders of the artery segments.

**Figure 12.** Example of placing a stent.

#### **2.5. Other Functions**

The user can annotate the schema as a record of miscellaneous medical diagnosis and treat‐ ment. Our current implementation supports text and arrow marks in annotations (Figure 13). Unconstrained annotation encourages the user to think freely, similar to handwriting notes on traditional paper medical records. It is also helpful to remind the user of miscella‐ neous details associated with specific treatments.

**Figure 14.** The system displays the name of the vessel at the top right of the screen when the user places the mouse

Generating Graphical Reports on Cardiac Catheterization

http://dx.doi.org/10.5772/54235

375

**Figure 15.** The system displays segment border lines when the user enables this feature in the pop-up menu.

Many doctors use coronary angiography (CAG) to represent coronary stenosis pathology. CAG compactly shows the location and severity of stenoses. Our system supports the con‐ version of the graphical record to a CAG-compliant table dataset. The table is represented in

**3. Dataset structure and cooperation with other systems**

cursor over it.

The system can save an edited coronary schema, and then load it again for review or further editing. The schema is stored as vector graphics to reduce file size and facilitate editing. The system can export a schema in PNG image format for import into another system.

The user can create a new schema starting from a default coronary schema template and can also specify any schema to be the default template.

When the user places the mouse cursor on a vessel, the system displays the name of the ves‐ sel at the top right corner of the screen, as shown in Figure 14. The system displays not only the name of the vessel, but also its position ('PROXIMAL', 'MIDDLE' or 'DISTAL') in each blood vessel. Moreover, segment border lines are displayed when the user enables this fea‐ ture in the pop-up menu shown in Figure 15.

**Figure 13.** Example of recording text and arrow marks as an annotation.

**Figure 12.** Example of placing a stent.

neous details associated with specific treatments.

also specify any schema to be the default template.

ture in the pop-up menu shown in Figure 15.

**Figure 13.** Example of recording text and arrow marks as an annotation.

The user can annotate the schema as a record of miscellaneous medical diagnosis and treat‐ ment. Our current implementation supports text and arrow marks in annotations (Figure 13). Unconstrained annotation encourages the user to think freely, similar to handwriting notes on traditional paper medical records. It is also helpful to remind the user of miscella‐

The system can save an edited coronary schema, and then load it again for review or further editing. The schema is stored as vector graphics to reduce file size and facilitate editing. The

The user can create a new schema starting from a default coronary schema template and can

When the user places the mouse cursor on a vessel, the system displays the name of the ves‐ sel at the top right corner of the screen, as shown in Figure 14. The system displays not only the name of the vessel, but also its position ('PROXIMAL', 'MIDDLE' or 'DISTAL') in each blood vessel. Moreover, segment border lines are displayed when the user enables this fea‐

system can export a schema in PNG image format for import into another system.

**2.5. Other Functions**

374 Artery Bypass

**Figure 14.** The system displays the name of the vessel at the top right of the screen when the user places the mouse cursor over it.

**Figure 15.** The system displays segment border lines when the user enables this feature in the pop-up menu.

### **3. Dataset structure and cooperation with other systems**

Many doctors use coronary angiography (CAG) to represent coronary stenosis pathology. CAG compactly shows the location and severity of stenoses. Our system supports the con‐ version of the graphical record to a CAG-compliant table dataset. The table is represented in the format specified in the AHA committee report and stored as an XML file. Figure 16 shows the relationship between our system and CAG. The top screen in Figure 16 (a) presents an example of recording stenoses using our system; the middle screen of Figure 16 (a) shows the CAG dataset it produces. Any other system that supports this format can use the data file as shown in the bottom screen of Figure 16 (a).

The user can also edit the exported CAG table. When this happens, our system automatical‐ ly updates the corresponding stenosis on the coronary diagram including the information on the severity and character of the stenosis (Figure 16 (b)).

When a stenosis is straddling two or more segments, it is considered to belong to two or more segments. The stenosis drawn on LAD7 and LAD8 amid the strangulation shown in Figure 17 is an example.

**Figure 17.** Example of a stenosis over two divisions.

represent the taper (Figure 18 (c1), (c2)).

ing pattern after setting a stencil inside the stent area.

We designed our system as a platform-independent JavaTM program using the Java2DTM graphics application programming interface. This section describes the implementation de‐

Generating Graphical Reports on Cardiac Catheterization

http://dx.doi.org/10.5772/54235

377

The system displays coronary arteries as two parallel lines and handles the branches ap‐ propriately (Figure 18 (a)). A vessel is a polyline composed of small line segments. The system first draws a wide red line and then a narrow white line inside (Figure 18 (b1), (b2)). The width of these lines decreases toward the non-connected end of a vessel to

A stenosis is displayed in a similar manner. The system first draws a wide black line inside the vessel and then a narrow white line inside that. A stent is rendered by drawing a hatch‐

**4. Implementation**

tails of the current prototype.

**4.1. On-screen displays**

**Figure 16.** Example of the automatic relationship between the coronary diagram and the CAG table. (a) The system automatically generates a CAG table from a graphical coronary schema by checking the existence of a stenosis in each segment of the coronary arteries, and stores the results in XML format. (b) The system can automatically update the stenoses on the coronary schema from the corresponding CAG table.

**Figure 17.** Example of a stenosis over two divisions.
