# sphere_distort.cpp File Reference

Implementation of the "Spherize" layer. More...

`#include "sphere_distort.h"`
`#include <synfig/string.h>`
`#include <synfig/time.h>`
`#include <synfig/context.h>`
`#include <synfig/paramdesc.h>`
`#include <synfig/renddesc.h>`
`#include <synfig/surface.h>`
`#include <synfig/value.h>`
`#include <synfig/valuenode.h>`
`#include <synfig/transform.h>`
`#include <synfig/curve_helper.h>`

## Enumerations

enum | { TYPE_NORMAL = 0, TYPE_DISTH = 1, TYPE_DISTV = 2, N_TYPES }

## Functions

| SYNFIG_LAYER_INIT (Layer_SphereDistort)
| SYNFIG_LAYER_SET_NAME (Layer_SphereDistort,"spherize")
| SYNFIG_LAYER_SET_LOCAL_NAME (Layer_SphereDistort, N_("Spherize"))
| SYNFIG_LAYER_SET_CATEGORY (Layer_SphereDistort, N_("Distortions"))
| SYNFIG_LAYER_SET_VERSION (Layer_SphereDistort,"0.2")
| SYNFIG_LAYER_SET_CVS_ID (Layer_SphereDistort,"$Id$")
float | spherify (float f)
float | unspherify (float f)
Point | sphtrans (const Point &p, const Point &center, const float &radius, const Real &percent, int type, bool &clipped)
Point | sphtrans (const Point &p, const Point &center, const Real &radius, const Real &percent, int type)

## Variables

const double | PI = 3.14159265

## Detailed Description

Implementation of the "Spherize" layer.

$Id$

## Enumeration Type Documentation

anonymous enum

Enumerator:

  TYPE_NORMAL |
  TYPE_DISTH |
  TYPE_DISTV |
  N_TYPES |

## Function Documentation

SYNFIG_LAYER_INIT | ( | Layer_SphereDistort |  | ) |

SYNFIG_LAYER_SET_NAME | ( | Layer_SphereDistort | ,
|  | "spherize" |  |
| ) |  |  |

SYNFIG_LAYER_SET_LOCAL_NAME | ( | Layer_SphereDistort | ,
|  | N_("Spherize") |  |
| ) |  |  |

SYNFIG_LAYER_SET_CATEGORY | ( | Layer_SphereDistort | ,
|  | N_("Distortions") |  |
| ) |  |  |

SYNFIG_LAYER_SET_VERSION | ( | Layer_SphereDistort | ,
|  | "0.2" |  |
| ) |  |  |

SYNFIG_LAYER_SET_CVS_ID | ( | Layer_SphereDistort | ,
|  | "$Id$" |  |
| ) |  |  |

float spherify | ( | float | f | ) | `[inline]`

References PI.

Referenced by sphtrans().

float unspherify | ( | float | f | ) | `[inline]`

References PI.

Referenced by sphtrans().

Point sphtrans | ( | const Point & | p,
|  | const Point & | center,
|  | const float & | radius,
|  | const Real & | percent,
|  | int | type,
|  | bool & | clipped |
| ) |  |  |

References synfig::Vector::mag(), spherify(), TYPE_DISTH, TYPE_DISTV, TYPE_NORMAL, and unspherify().

Referenced by synfig::Layer_SphereDistort::accelerated_render(), synfig::Layer_SphereDistort::get_color(), synfig::Layer_SphereDistort::hit_check(), and sphtrans().

Point sphtrans | ( | const Point & | p,
|  | const Point & | center,
|  | const Real & | radius,
|  | const Real & | percent,
|  | int | type |
| ) |  |  | `[inline]`

References sphtrans().

## Variable Documentation

const double PI = 3.14159265