casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions | List of all members
casa::viewer::Point Class Reference

All regions are specified in "linear coordinates", not "pixel coordinates". More...

#include <Point.h>

Inheritance diagram for casa::viewer::Point:
casa::viewer::Rectangle casa::viewer::Region casa::viewer::dtorNotifier

Public Member Functions

 ~Point ()
 
 Point (WorldCanvas *wc, QtRegionDock *d, double x, double y, QtMouseToolNames::PointRegionSymbols sym)
 
 Point (QtRegionSourceKernel *factory, WorldCanvas *wc, double x, double y, bool hold_signals=false, QtMouseToolNames::PointRegionSymbols sym=QtMouseToolNames::SYM_DOT)
 carry over from QtRegion... More...
 
bool setMarker (QtMouseToolNames::PointRegionSymbols sym)
 
int clickHandle (double, double) const
 
bool clickWithin (double x, double y) const
 
region::PointInfo checkPoint (double x, double y) const
 returns point state (Region::PointLocation) More...
 
unsigned int mouseMovement (double x, double y, bool other_selected)
 returns mouse movement state More...
 
void resize (double, double)
 
AnnotationBaseannotation () const
 
bool degenerate () const
 points cannot be degenerate... More...
 
region::RegionTypes type () const
 fetch region type... More...
 
void releaseSignals ()
 
- Public Member Functions inherited from casa::viewer::Rectangle
 ~Rectangle ()
 
 Rectangle (WorldCanvas *wc, QtRegionDock *d, double x1, double y1, double x2, double y2, bool hold_signals=false)
 
 Rectangle (QtRegionSourceKernel *rs, WorldCanvas *wc, double x1, double y1, double x2, double y2, bool hold_signals=false)
 carry over from QtRegion... More...
 
bool clickWithin (double x, double y) const
 
int clickHandle (double x, double y) const
 
bool doubleClick (double, double)
 
unsigned int mouseMovement (double x, double y, bool other_selected)
 returns mouse state (Region::MouseState) More...
 
int moveHandle (int handle, double x, double y)
 for rectangles, resizing can change the handle... More...
 
void move (double dx, double dy)
 
void resize (double, double)
 
bool valid_translation (double dx, double dy, double width_delta, double height_delta)
 
void linearCenter (double &x, double &y) const
 
void pixelCenter (double &x, double &y) const
 
AnnotationBaseannotation () const
 
virtual bool flag (MSAsRaster *msar)
 
void boundingRectangle (double &blcx, double &blcy, double &trcx, double &trcy) const
 in "linear" coordinates... More...
 
void output (ds9writer &out) const
 
- Public Member Functions inherited from casa::viewer::Region
const std::string name () const
 user specified name More...
 
std::string lineColor () const
 
std::string centerColor () const
 
int lineWidth () const
 
region::LineStyle lineStyle () const
 
std::string textColor () const
 
std::string textFont () const
 
int textFontSize () const
 
int textFontStyle () const
 
std::string textValue () const
 
region::TextPosition textPosition () const
 
void textPositionDelta (int &x, int &y) const
 
virtual void setLabel (const std::string &l)
 
virtual void setLabelPosition (region::TextPosition)
 
virtual void setLabelDelta (const std::vector< int > &)
 
virtual void setFont (const std::string &font="", int font_size=-1, int font_style=0, const std::string &font_color="")
 
virtual void setLine (const std::string &line_color="", region::LineStyle line_style=region::SolidLine, unsigned int line_width=1)
 
virtual void setAnnotation (bool)
 
void getCoordinatesAndUnits (region::Coord &c, region::Units &x_units, region::Units &y_units, std::string &width_height_units) const
 
void getPositionString (std::string &x, std::string &y, std::string &angle, double &bounding_width, double &bounding_height, region::Coord coord=region::DefaultCoord, region::Units x_units=region::DefaultUnits, region::Units y_units=region::DefaultUnits, const std::string &bounding_units="rad") const
 
bool translateX (const std::string &, const std::string &, const std::string &)
 
bool translateY (const std::string &, const std::string &, const std::string &)
 
bool resizeX (const std::string &, const std::string &, const std::string &)
 
bool resizeY (const std::string &, const std::string &, const std::string &)
 
int numFrames () const
 
void zRange (int &x, int &y) const
 
int zIndex () const
 
bool regionVisible () const
 
bool worldBoundingRectangle (double &, double &, const std::string &) const
 
virtual ~Region ()
 
 Region ()
 
 Region (const std::string &name, WorldCanvas *wc, QtRegionDock *, bool hold_signals_=false, QtRegionState *supplied_state=0, QtMouseToolNames::PointRegionSymbols sym=QtMouseToolNames::SYM_UNKNOWN)
 
void setDrawingEnv ()
 
void resetDrawingEnv ()
 
void setTextEnv ()
 
void resetTextEnv ()
 
void pushDrawingEnv (region::LineStyle ls, int thickness=-1)
 
void popDrawingEnv ()
 
void setDrawCenter (bool draw_center)
 
bool getDrawCenter ()
 
void refresh ()
 duplicate of MultiWCTool::refresh() More...
 
void invalidateCenterInfo ()
 indicates that the center info is no longer valid More...
 
bool selected () const
 
virtual bool weaklySelected () const
 is this region weakly or temporarily selected? More...
 
virtual void weaklySelect (bool scroll_dock=true)
 
virtual void weaklyUnselect ()
 weaklyUnselectLimited() plus extra processing... More...
 
virtual void weaklyUnselectLimited ()
 just unmark this region (called from RegionToolManager); do not do the rest of the reorganization that weaklyUnselect() does... More...
 
virtual void selectedInCanvas ()
 indicates that the user has selected this rectangle... More...
 
virtual void mark (bool set=true)
 functions added with the introduction of RegionToolManager and the unified selection and manipulation of the various region types... More...
 
virtual bool marked () const
 
virtual bool mark_toggle ()
 returns the new state... More...
 
size_t selected_region_count ()
 
size_t marked_region_count ()
 
void clearMouseInRegion ()
 
virtual void status (const std::string &msg, const std::string &type="info")
 update status information... More...
 
virtual bool markCenter () const
 
virtual bool skyComponent () const
 
void holdSignals ()
 postpone signal processing (important for signals generated during construction)... More...
 
virtual std::list
< std::shared_ptr< RegionInfo > > * 
statistics ()
 
int getId () const
 Histogram functionality. More...
 
casacore::ImageRegiongetImageRegion (DisplayData *dd) const
 
QtRegionStatestate ()
 DISPLAY_PURE_VIRTUAL(Region::pixelCenter,);. More...
 
int markerScale () const
 how much to scale the symbol used to mark point regions... More...
 
void setMarkerScale (int v)
 
void updateStateInfo (bool region_modified, region::RegionChanges)
 indicates that region movement requires the update of state information... More...
 
void refresh_state_gui ()
 
void clearStatistics ()
 blank out the statistics for this region More...
 
void statisticsUpdateNeeded ()
 
int & colorIndex ()
 used to synchronize the default color for all of the RegionDock's RegionState objects... More...
 
std::pair< int, int > & tabState ()
 used to synchronize all of the RegionDock's RegionState tab configuration... More...
 
std::map< std::string, int > & coordState ()
 used to synchronize all of the RegionDock's RegionState coordinate configuration... More...
 
void selectedCountUpdateNeeded ()
 forward state update information to the dock wherere a count of selected regions, information is maintained. More...
 
QString getSaveDir ()
 used to synchronize all region directories per QtDisplayPanelGUI... More...
 
void putSaveDir (QString)
 
QString getLoadDir ()
 
void putLoadDir (QString)
 
- Public Member Functions inherited from casa::viewer::dtorNotifier
 dtorNotifier ()
 
 ~dtorNotifier ()
 signals any dtorNotifiee's that are registered More...
 
void addNotifiee (dtorNotifiee *)
 
void removeNotifiee (dtorNotifiee *)
 

Protected Member Functions

virtual void fetch_region_details (region::RegionTypes &type, std::vector< std::pair< int, int > > &pixel_pts, std::vector< std::pair< double, double > > &world_pts) const
 
void drawRegion (bool)
 
std::list< std::shared_ptr
< RegionInfo > > * 
generate_dds_centers ()
 
- Protected Member Functions inherited from casa::viewer::Rectangle
 Rectangle (const std::string &name, WorldCanvas *wc, QtRegionDock *d, double x1, double y1, double x2, double y2, bool hold_signals=false, QtRegionState *supplied_state=0, QtMouseToolNames::PointRegionSymbols sym=QtMouseToolNames::SYM_UNKNOWN)
 
RegionInfo::stats_tget_ms_stats (MSAsRaster *msar, double x, double y)
 
void generate_nonimage_statistics (DisplayData *, std::list< RegionInfo > *)
 
casacore::ImageRegionget_image_region (DisplayData *) const
 
virtual void setCenter (double &x, double &y, double &deltx, double &delty)
 
- Protected Member Functions inherited from casa::viewer::Region
void fetch_details (region::RegionTypes &type, QList< int > &pixelx, QList< int > &pixely, QList< double > &worldx, QList< double > &worldy)
 
void signal_region_change (region::RegionChanges)
 
void initHistogram ()
 -----------------—==================== from old QtRegion ====================-----------------— More...
 
virtual std::list
< std::shared_ptr< RegionInfo > > * 
generate_dds_statistics ()
 
virtual void generate_nonimage_statistics (DisplayData *, std::list< std::shared_ptr< RegionInfo > > *)
 hook to allow generate_dds_statistics() to generate statistics for rectangular measurement set regions... More...
 
virtual RegionInfonewInfoObject (casacore::ImageInterface< float > *, PrincipalAxesDD *)
 newInfoObject(...) is currently only used for PVLine regions, but it should be used for other regions to allow for specialized creation of the region info objects for display in "statistics"... More...
 
virtual ImageRegion_state get_image_selected_region (DisplayData *)
 
double linear_average (double a, double b) const
 
RegionInfo::center_tgetLayerCenter (PrincipalAxesDD *padd, std::shared_ptr< casacore::ImageInterface< float > > image, casacore::ImageRegion &imgReg)
 
RegionInfo::stats_tgetLayerStats (PrincipalAxesDD *padd, casacore::ImageInterface< float > *image, casacore::ImageRegion &imgReg)
 
region::Units current_xunits () const
 
region::Units current_yunits () const
 
region::Coord current_region_coordsys () const
 
casacore::MDirection::Types current_casa_coordsys () const
 
virtual void drawText ()
 
virtual void drawCenter (double &x, double &y, double &deltx, double &delty)
 
virtual bool within_drawing_area ()
 

Protected Attributes

QtMouseToolNames::PointRegionSymbols marker_
 
- Protected Attributes inherited from casa::viewer::Rectangle
double blc_x
 
double blc_y
 
double trc_x
 
double trc_y
 
double center_x_
 
double center_y_
 
double center_delta_x_
 
double center_delta_y_
 
double handle_delta_x
 
double handle_delta_y
 
- Protected Attributes inherited from casa::viewer::Region
QtRegionDockdock_
 
QtRegionStatemystate
 
HistogramTabhistogram
 
bool statistics_update_needed
 
bool position_visible
 
bool position_update_needed
 
int id_
 
bool statistics_visible
 
int hold_signals
 
std::map
< region::RegionChanges, bool > 
held_signals
 
virtual casacore::ImageRegion
*virtual get_image_region(DisplayData
*) const DISPLAY_PURE_VIRTUAL(Region
const std::set< Region * > 
get_selected_regions )()
 
virtual void virtual setCenter(double
&, double &, double &, double
&) DISPLAY_PURE_VIRTUAL(Region
void 
drawCenter (double &x, double &y)
 
region::LineStyle current_ls
 
std::list< ls_elels_stack
 
WorldCanvaswc_
 
int last_z_index
 
bool selected_
 
bool visible_
 
bool complete
 Should this region be considered complete? Set to true by derived classes... More...
 
bool mouse_in_region
 Derived classes set this to true and clear it when the mouse enters and exits this regions bounding box... More...
 

Static Protected Attributes

static const int radius
 
- Static Protected Attributes inherited from casa::viewer::Region
static const int SEXAGPREC
 
static std::shared_ptr< Regioncreating_region
 Holds a pointer to the region currently being created... More...
 

Private Member Functions

virtual bool output_region (ds9writer &out, WorldCanvas *wc, const std::vector< std::pair< double, double > > &pts) const
 
void draw_arrow (PixelCanvas *, int, int, int, int, int, int)
 

Additional Inherited Members

- Signals inherited from casa::viewer::Region
void selectionChanged (viewer::Region *, bool)
 
void regionCreated (int, const QString &shape, const QString &name, const QList< double > &world_x, const QList< double > &world_y, const QList< int > &pixel_x, const QList< int > &pixel_y, const QString &linecolor, const QString &text, const QString &font, int fontsize, int fontstyle)
 
void regionUpdate (int, viewer::region::RegionChanges, const QList< double > &world_x, const QList< double > &world_y, const QList< int > &pixel_x, const QList< int > &pixel_y)
 
void regionChange (viewer::Region *, std::string)
 
void regionUpdateResponse (int, const QString &shape, const QString &name, const QList< double > &world_x, const QList< double > &world_y, const QList< int > &pixel_x, const QList< int > &pixel_y, const QString &linecolor, const QString &text, const QString &font, int fontsize, int fontstyle)
 generated by emitUpdate()... More...
 
void showHistogramTool ()
 
- Static Public Member Functions inherited from casa::viewer::Region
static bool refreshNeeded (int v)
 functions to query results from mouse functions... More...
 
static bool regionSelected (int v)
 
static bool handleSelected (int v)
 
static std::shared_ptr
< viewer::Region
creatingRegion ()
 called when creating regions to allow suppression of corner-handle drawing... More...
 
static void creatingRegionBegin (std::shared_ptr< viewer::Region > r)
 
static void creatingRegionEnd ()
 
- Public Attributes inherited from casa::viewer::Region
virtual void boundingRectangle(double
&, double &, double &, double
&) const DISPLAY_PURE_VIRTUAL(Region
void 
emitUpdate ()
 in "linear" coordinates... More...
 
- Protected Types inherited from casa::viewer::Region
typedef std::pair
< region::LineStyle, int > 
ls_ele
 
- Protected Slots inherited from casa::viewer::Region
void refresh_canvas_event ()
 
void refresh_statistics_event (bool)
 
void refresh_position_event (bool)
 
void translate_x (const QString &, const QString &, const QString &)
 
void translate_y (const QString &, const QString &, const QString &)
 
void resize_x (const QString &, const QString &, const QString &)
 
void resize_y (const QString &, const QString &, const QString &)
 
void updateCenterInfo ()
 
void adjustCorners (double, double, double, double)
 
void refresh_zrange_event (int, int)
 
void revoke_region ()
 revoke... More...
 
void revoke_region (QtRegionState *)
 revoke if our state matches parameter... More...
 
void reload_statistics_event ()
 
void output (std::list< QtRegionState * >, RegionTextList &)
 
void output (std::list< QtRegionState * >, ds9writer &)
 
- Static Protected Member Functions inherited from casa::viewer::Region
static int getAxisIndex (casacore::ImageInterface< float > *image, std::string axtype)
 

Detailed Description

All regions are specified in "linear coordinates", not "pixel coordinates".

This is necessary because "linear coordinates" scale with zooming whereas "pixel coordinates" do not. Unfortunately, this means that coordinate transformation is required each time the region is drawn.

Definition at line 51 of file Point.h.

Constructor & Destructor Documentation

casa::viewer::Point::~Point ( )
casa::viewer::Point::Point ( WorldCanvas wc,
QtRegionDock d,
double  x,
double  y,
QtMouseToolNames::PointRegionSymbols  sym 
)
inline

Definition at line 54 of file Point.h.

casa::viewer::Point::Point ( QtRegionSourceKernel factory,
WorldCanvas wc,
double  x,
double  y,
bool  hold_signals = false,
QtMouseToolNames::PointRegionSymbols  sym = QtMouseToolNames::SYM_DOT 
)
inline

carry over from QtRegion...

hopefully, removed soon...

Definition at line 60 of file Point.h.

References casa::viewer::Region::mystate, and casa::viewer::QtRegionState::setRegion().

Member Function Documentation

AnnotationBase* casa::viewer::Point::annotation ( ) const
region::PointInfo casa::viewer::Point::checkPoint ( double  x,
double  y 
) const
virtual

returns point state (Region::PointLocation)

Reimplemented from casa::viewer::Rectangle.

int casa::viewer::Point::clickHandle ( double  ,
double   
) const
inline

Definition at line 69 of file Point.h.

bool casa::viewer::Point::clickWithin ( double  x,
double  y 
) const
bool casa::viewer::Point::degenerate ( ) const
inlinevirtual

points cannot be degenerate...

Reimplemented from casa::viewer::Region.

Definition at line 85 of file Point.h.

void casa::viewer::Point::draw_arrow ( PixelCanvas ,
int  ,
int  ,
int  ,
int  ,
int  ,
int   
)
private
void casa::viewer::Point::drawRegion ( bool  )
protectedvirtual

Reimplemented from casa::viewer::Rectangle.

virtual void casa::viewer::Point::fetch_region_details ( region::RegionTypes type,
std::vector< std::pair< int, int > > &  pixel_pts,
std::vector< std::pair< double, double > > &  world_pts 
) const
protectedvirtual

Reimplemented from casa::viewer::Rectangle.

std::list<std::shared_ptr<RegionInfo> >* casa::viewer::Point::generate_dds_centers ( )
protectedvirtual

Reimplemented from casa::viewer::Rectangle.

unsigned int casa::viewer::Point::mouseMovement ( double  x,
double  y,
bool  other_selected 
)

returns mouse movement state

virtual bool casa::viewer::Point::output_region ( ds9writer out,
WorldCanvas wc,
const std::vector< std::pair< double, double > > &  pts 
) const
privatevirtual

Reimplemented from casa::viewer::Rectangle.

void casa::viewer::Point::releaseSignals ( )
virtual

Reimplemented from casa::viewer::Region.

void casa::viewer::Point::resize ( double  ,
double   
)
inline

Definition at line 80 of file Point.h.

bool casa::viewer::Point::setMarker ( QtMouseToolNames::PointRegionSymbols  sym)
virtual

Reimplemented from casa::viewer::Region.

region::RegionTypes casa::viewer::Point::type ( ) const
inlinevirtual

fetch region type...

Reimplemented from casa::viewer::Rectangle.

Definition at line 90 of file Point.h.

References casa::viewer::region::PointRegion.

Member Data Documentation

QtMouseToolNames::PointRegionSymbols casa::viewer::Point::marker_
protected

Definition at line 107 of file Point.h.

const int casa::viewer::Point::radius
staticprotected

Definition at line 98 of file Point.h.


The documentation for this class was generated from the following file: