ROOT logo
// $Id: WSPoint.h 2088 2008-11-23 20:26:46Z matevz $

// Copyright (C) 1999-2008, Matevz Tadel. All rights reserved.
// This file is part of GLED, released under GNU General Public License version 2.
// For the licensing terms see $GLEDSYS/LICENSE or http://www.gnu.org/.

#ifndef Geom1_WSPoint_H
#define Geom1_WSPoint_H

#include <Glasses/ZNode.h>
#include <TMatrixD.h>

class WSPoint : public ZNode
{
  MAC_RNR_FRIENDS(WSPoint);
  MAC_RNR_FRIENDS(WSSeed);
  friend class WSSeed;
  friend class WSTube;

private:
  void _init();

protected:
  Float_t	mW; // Width   X{GS} 7 Value(-range=>[-1e3,1e3,1,1000], -width=>6, -join=>1)
  Float_t	mS; // Spread  X{GS} 7 Value(-range=>[-1e3,1e3,1,1000], -width=>6, -join=>1)
  Float_t	mT; // Tension X{GS} 7 Value(-range=>[-1e3,1e3,1,1000], -width=>6)

  Float_t	mTwist;   // Texture wraps X{GS} 7 Value(-range=>[-1e3,1e3,1,1000], -join=>1)
  Float_t	mStretch; // Lenght        X{GE} 7 Value(-range=>[-1e3,1e3,1,1000])

  // Internal stuff for connections.
  TMatrixD mCoffs;     //! X{R}
  WSPoint* mCoffPoint; //!
  WSPoint* mPrevPoint; //!
  WSPoint* mNextPoint; //!

public:
  WSPoint(const Text_t* n="WSPoint", const Text_t* t=0) :
    ZNode(n,t), mCoffs(4,4) { _init(); }

  void Coff(WSPoint* f);

  // Stamping, custom set-methods.

  virtual TimeStamp_t Stamp(FID_t fid, UChar_t eye_bits=0);

  void SetStretch(Float_t stretch);

  void InsertPoint(Float_t time=0.5); // X{E} 7 MCWButt()

#include "WSPoint.h7"
  ClassDef(WSPoint, 1);
}; // endclass WSPoint


#endif
 WSPoint.h:1
 WSPoint.h:2
 WSPoint.h:3
 WSPoint.h:4
 WSPoint.h:5
 WSPoint.h:6
 WSPoint.h:7
 WSPoint.h:8
 WSPoint.h:9
 WSPoint.h:10
 WSPoint.h:11
 WSPoint.h:12
 WSPoint.h:13
 WSPoint.h:14
 WSPoint.h:15
 WSPoint.h:16
 WSPoint.h:17
 WSPoint.h:18
 WSPoint.h:19
 WSPoint.h:20
 WSPoint.h:21
 WSPoint.h:22
 WSPoint.h:23
 WSPoint.h:24
 WSPoint.h:25
 WSPoint.h:26
 WSPoint.h:27
 WSPoint.h:28
 WSPoint.h:29
 WSPoint.h:30
 WSPoint.h:31
 WSPoint.h:32
 WSPoint.h:33
 WSPoint.h:34
 WSPoint.h:35
 WSPoint.h:36
 WSPoint.h:37
 WSPoint.h:38
 WSPoint.h:39
 WSPoint.h:40
 WSPoint.h:41
 WSPoint.h:42
 WSPoint.h:43
 WSPoint.h:44
 WSPoint.h:45
 WSPoint.h:46
 WSPoint.h:47
 WSPoint.h:48
 WSPoint.h:49
 WSPoint.h:50
 WSPoint.h:51
 WSPoint.h:52
 WSPoint.h:53
 WSPoint.h:54
 WSPoint.h:55
 WSPoint.h:56