https://hal.archives-ouvertes.fr/hal-02398953
Tip revision: c33910a29d53f4e137c225b21a8d59e43327cbf9 authored by Software Heritage on 08 December 2019, 12:26:32 UTC
hal: Deposit 351 in collection hal
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