https://hal.archives-ouvertes.fr/hal-02398953
Raw File
Tip revision: c33910a29d53f4e137c225b21a8d59e43327cbf9 authored by Software Heritage on 08 December 2019, 12:26:32 UTC
hal: Deposit 351 in collection hal
Tip revision: c33910a
Prism.h

#ifndef PRISM_H
#define PRISM_H
 
#include <iostream>
#include <giac/config.h>
#include <giac/giac.h>

#include <string>
#include <map>
#include <algorithm>
#include <set>

using namespace std;
using namespace giac;

#include "WVector.h"
#include "Util.h"

extern context ct;

class Prism
{

  friend ostream & operator<<(ostream & out, const Prism &A);
 
 public:
  
  Prism();

  WVector mirror, apex;
  gen apexProjection;
  gen cspine;
  vector<WVector> sides;

  bool invertpairing;

  // next few fields will be used for vertices
  vector<WVector> bottomface;
  vector<WVector> topface;
  vector<WVector> midvertices;
  vector<int> midvertindices;
  vector<unsigned> freeRidges;
  bool isSurrounded;
  int jstart;

  int toppower, toporder;

  gen pairing;

  gen X0, X1; // Vectors defining bisector as equidistant locus
  //   not sure whether I want these to be negative vectors

  void fillRidge(unsigned k);

  void print();

  Prism mycopy();

};

#endif
back to top