## GOArrow

GOArrow

## Synopsis

                        GOArrow;
    enum                GOArrowType;
    void                go_arrow_clear                      (GOArrow *dst);
    GOArrow *           go_arrow_dup                        (GOArrow *src);
    void                go_arrow_init                       (GOArrow *res,
                                                             GOArrowType typ,
                                                             double a,
                                                             double b,
                                                             double c);
    void                go_arrow_init_kite                  (GOArrow *dst,
                                                             double a,
                                                             double b,
                                                             double c);
    void                go_arrow_init_oval                  (GOArrow *dst,
                                                             double ra,
                                                             double rb);
    char const *        go_arrow_type_as_str                (GOArrowType typ);
    GOArrowType         go_arrow_type_from_str              (const char *name);

## Object Hierarchy

      GBoxed
       +----GOArrow

## Description

## Details

### GOArrow

    typedef struct {
    	GOArrowType typ;
    	double a, b, c;
    } GOArrow;

GOArrowType `typ`; | GOArrowType.
double `a`; | first arrow head size parameter.
double `b`; | second arrow head size parameter.
double `c`; | third arrow head size parameter.

### enum GOArrowType

    typedef enum {
    	GO_ARROW_NONE,
    	GO_ARROW_KITE,
    	GO_ARROW_OVAL
    	/* GO_ARROW_STEALTH */
    	/* GO_ARROW_DIAMOND */
    	/* GO_ARROW_OPEN */
    } GOArrowType;

`GO_ARROW_NONE` | no arrow head.
`GO_ARROW_KITE` | kite head.
`GO_ARROW_OVAL` | oval head.

### go_arrow_clear ()

    void                go_arrow_clear                      (GOArrow *dst);

### go_arrow_dup ()

    GOArrow *           go_arrow_dup                        (GOArrow *src);

### go_arrow_init ()

    void                go_arrow_init                       (GOArrow *res,
                                                             GOArrowType typ,
                                                             double a,
                                                             double b,
                                                             double c);

### go_arrow_init_kite ()

    void                go_arrow_init_kite                  (GOArrow *dst,
                                                             double a,
                                                             double b,
                                                             double c);

### go_arrow_init_oval ()

    void                go_arrow_init_oval                  (GOArrow *dst,
                                                             double ra,
                                                             double rb);

### go_arrow_type_as_str ()

    char const *        go_arrow_type_as_str                (GOArrowType typ);

### go_arrow_type_from_str ()

    GOArrowType         go_arrow_type_from_str              (const char *name);