source: trunk/packages/vizservers/nanovis/PointSet.h @ 3612

Last change on this file since 3612 was 3612, checked in by ldelgass, 7 years ago

Remove Nv prefix from shader classes now that they are in nv namespace.

  • Property svn:eol-style set to native
File size: 1.5 KB
RevLine 
[2798]1/* -*- mode: c++; c-basic-offset: 4; indent-tabs-mode: nil -*- */
[3502]2/*
3 * Copyright (c) 2004-2013  HUBzero Foundation, LLC
4 *
5 */
[2831]6#ifndef POINT_SET_H
7#define POINT_SET_H
[825]8
[3492]9#include <vrmath/Vector3f.h>
10#include <vrmath/Vector4f.h>
11
[2831]12#include "PCASplit.h"
[825]13
[3612]14namespace nv {
15
[2831]16class PointSet
17{
[825]18public :
[1028]19    PointSet() :
[2831]20        _sortLevel(4),
21        _cluster(0),
22        _max(1.0f),
23        _min(0.0f), 
24        _visible(false)
[1028]25    {
26    }
[2831]27
[1028]28    ~PointSet() {
29        if (_cluster) {
30            delete _cluster;
31        }
32    }
[825]33
[3492]34    void initialize(vrmath::Vector4f *values, const unsigned int count, 
35                    const vrmath::Vector3f& scale, const vrmath::Vector3f& origin, 
[2831]36                    float min, float max);
37
[2844]38    void updateColor(float *color, int count);
[2831]39
40    bool isVisible() const
41    {
42        return _visible;
[1028]43    }
[2831]44
45    void setVisible(bool visible)
46    {
47        _visible = visible;
[1028]48    }
[2831]49
50    unsigned int getSortLevel() const
51    {
52        return _sortLevel;
[1028]53    }
[2831]54
55    PCA::ClusterAccel* getCluster()
56    {
57        return _cluster;
[1028]58    }
[2831]59
[3492]60    vrmath::Vector3f& getScale()
[2831]61    {
62        return _scale;
[1028]63    }
[2831]64
[3492]65    const vrmath::Vector3f& getScale() const
[2831]66    {
67        return _scale;
[1028]68    }
[2831]69
[3492]70    vrmath::Vector3f& getOrigin()
[2831]71    {
72        return _origin;
[1028]73    }
[2831]74
[3492]75    const vrmath::Vector3f& getOrigin() const
[2831]76    {
77        return _origin;
[1028]78    }
[2831]79
80private:
81    unsigned int _sortLevel;
[2844]82    PCA::ClusterAccel *_cluster;
[2831]83
[3492]84    vrmath::Vector3f _scale;
85    vrmath::Vector3f _origin;
[2831]86    float _max;
87    float _min;
88    bool _visible;
[1028]89};
[825]90
[3612]91}
92
[2831]93#endif
Note: See TracBrowser for help on using the repository browser.