gvwrite
htmlEntityUTF8
HTTPServerEnVar
-Initial_dist
+Initial_dist
+EdgeLabelsDone
initMapData
inPS
insertPM
<Tool\r
Name="VCCLCompilerTool"\r
Optimization="0"\r
- AdditionalIncludeDirectories=""$(SolutionDir)/lib/xdot";"C:\gtk\lib\glib-2.0\include";"C:\gtk\include\glib-2.0";"C:\gtk\include\pango-1.0\";C:\gtk\include\cairo;C:\gtk\include\freetype2;C:\gtk\include;"$(SolutionDir)/libltdl";"$(SolutionDir)/lib/neatogen";"$(SolutionDir)/lib/agutil";"$(SolutionDir)/windows/lib/cdt";"$(SolutionDir)/";"$(SolutionDir)/lib/graph";"$(SolutionDir)/lib/vpsc";"$(SolutionDir)/lib/vmalloc";"$(SolutionDir)/lib/twopigen";"$(SolutionDir)/lib/sparse";"$(SolutionDir)/lib/sfio";"$(SolutionDir)/lib/sfpdpgen";"$(SolutionDir)/lib/rbtree";"$(SolutionDir)/lib/pathplan";"$(SolutionDir)/lib/patchwork";"$(SolutionDir)/lib/pack";"$(SolutionDir)/lib/ortho";"$(SolutionDir)/lib/inkpot";"$(SolutionDir)/lib/ingraphs";"$(SolutionDir)/lib/gd";"$(SolutionDir)/lib/filter";"$(SolutionDir)/lib/fdpgen";"$(SolutionDir)/lib/expr";"$(SolutionDir)/lib/dotgen";"$(SolutionDir)/lib/circogen";"$(SolutionDir)/lib/ast";"$(SolutionDir)/lib/agraph";"$(SolutionDir)/lib/common";"$(SolutionDir)/lib/gvc";"$(SolutionDir)/lib/cdt";"$(SolutionDir)/lib/cgraph";"$(SolutionDir)/lib/regex_win32""\r
+ AdditionalIncludeDirectories="./label;"$(SolutionDir)/lib/xdot";"C:\gtk\lib\glib-2.0\include";"C:\gtk\include\glib-2.0";"C:\gtk\include\pango-1.0\";C:\gtk\include\cairo;C:\gtk\include\freetype2;C:\gtk\include;"$(SolutionDir)/libltdl";"$(SolutionDir)/lib/neatogen";"$(SolutionDir)/lib/agutil";"$(SolutionDir)/windows/lib/cdt";"$(SolutionDir)/";"$(SolutionDir)/lib/graph";"$(SolutionDir)/lib/vpsc";"$(SolutionDir)/lib/vmalloc";"$(SolutionDir)/lib/twopigen";"$(SolutionDir)/lib/sparse";"$(SolutionDir)/lib/sfio";"$(SolutionDir)/lib/sfpdpgen";"$(SolutionDir)/lib/rbtree";"$(SolutionDir)/lib/pathplan";"$(SolutionDir)/lib/patchwork";"$(SolutionDir)/lib/pack";"$(SolutionDir)/lib/ortho";"$(SolutionDir)/lib/inkpot";"$(SolutionDir)/lib/ingraphs";"$(SolutionDir)/lib/gd";"$(SolutionDir)/lib/filter";"$(SolutionDir)/lib/fdpgen";"$(SolutionDir)/lib/expr";"$(SolutionDir)/lib/dotgen";"$(SolutionDir)/lib/circogen";"$(SolutionDir)/lib/ast";"$(SolutionDir)/lib/agraph";"$(SolutionDir)/lib/common";"$(SolutionDir)/lib/gvc";"$(SolutionDir)/lib/cdt";"$(SolutionDir)/lib/cgraph";"$(SolutionDir)/lib/regex_win32""\r
PreprocessorDefinitions="MSWIN32;WIN32;_DEBUG;_WINDOWS;_USRDLL;GVC_EXPORTS;WIN32_DLL;HAVE_CONFIG_H"\r
MinimalRebuild="true"\r
BasicRuntimeChecks="3"\r
/>\r
<Tool\r
Name="VCCLCompilerTool"\r
- AdditionalIncludeDirectories=""C:\gtk\lib\glib-2.0\include";"C:\gtk\include\glib-2.0";"C:\gtk\include\pango-1.0\";C:\gtk\include\cairo;C:\gtk\include\freetype2;C:\gtk\include;"$(SolutionDir)/libltdl";"$(SolutionDir)/lib/neatogen";"$(SolutionDir)/lib/agutil";"$(SolutionDir)/windows/lib/cdt";"$(SolutionDir)/";"$(SolutionDir)/lib/graph";"$(SolutionDir)/lib/xdot";"$(SolutionDir)/lib/vpsc";"$(SolutionDir)/lib/vmalloc";"$(SolutionDir)/lib/twopigen";"$(SolutionDir)/lib/sparse";"$(SolutionDir)/lib/sfio";"$(SolutionDir)/lib/sfpdpgen";"$(SolutionDir)/lib/rbtree";"$(SolutionDir)/lib/pathplan";"$(SolutionDir)/lib/patchwork";"$(SolutionDir)/lib/pack";"$(SolutionDir)/lib/ortho";"$(SolutionDir)/lib/inkpot";"$(SolutionDir)/lib/ingraphs";"$(SolutionDir)/lib/gd";"$(SolutionDir)/lib/filter";"$(SolutionDir)/lib/fdpgen";"$(SolutionDir)/lib/expr";"$(SolutionDir)/lib/dotgen";"$(SolutionDir)/lib/circogen";"$(SolutionDir)/lib/ast";"$(SolutionDir)/lib/agraph";"$(SolutionDir)/lib/common";"$(SolutionDir)/lib/gvc";"$(SolutionDir)/lib/cdt";"$(SolutionDir)/lib/cgraph""\r
+ AdditionalIncludeDirectories="./label;"C:\gtk\lib\glib-2.0\include";"C:\gtk\include\glib-2.0";"C:\gtk\include\pango-1.0\";C:\gtk\include\cairo;C:\gtk\include\freetype2;C:\gtk\include;"$(SolutionDir)/libltdl";"$(SolutionDir)/lib/neatogen";"$(SolutionDir)/lib/agutil";"$(SolutionDir)/windows/lib/cdt";"$(SolutionDir)/";"$(SolutionDir)/lib/graph";"$(SolutionDir)/lib/xdot";"$(SolutionDir)/lib/vpsc";"$(SolutionDir)/lib/vmalloc";"$(SolutionDir)/lib/twopigen";"$(SolutionDir)/lib/sparse";"$(SolutionDir)/lib/sfio";"$(SolutionDir)/lib/sfpdpgen";"$(SolutionDir)/lib/rbtree";"$(SolutionDir)/lib/pathplan";"$(SolutionDir)/lib/patchwork";"$(SolutionDir)/lib/pack";"$(SolutionDir)/lib/ortho";"$(SolutionDir)/lib/inkpot";"$(SolutionDir)/lib/ingraphs";"$(SolutionDir)/lib/gd";"$(SolutionDir)/lib/filter";"$(SolutionDir)/lib/fdpgen";"$(SolutionDir)/lib/expr";"$(SolutionDir)/lib/dotgen";"$(SolutionDir)/lib/circogen";"$(SolutionDir)/lib/ast";"$(SolutionDir)/lib/agraph";"$(SolutionDir)/lib/common";"$(SolutionDir)/lib/gvc";"$(SolutionDir)/lib/cdt";"$(SolutionDir)/lib/cgraph""\r
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;GVC_EXPORTS;WIN32_DLL;HAVE_CONFIG_H"\r
RuntimeLibrary="2"\r
UsePrecompiledHeader="0"\r
RelativePath=".\common\splines.c"\r
>\r
</File>\r
+ <File\r
+ RelativePath=".\common\taper.c"\r
+ >\r
+ </File>\r
<File\r
RelativePath=".\common\timing.c"\r
>\r
{
LeafList_t *llp;
- if ((llp = NEW(LeafList_t))) {
+ if ((llp = NEW(LeafList_t)))
llp->leaf = lp;
- llp->next = 0;
- }
return llp;
}
free(llp);
llp = tlp;
}
- free(llp);
return;
}
for (i = 0; i < NODECARD; i++) {
if (!n->branch[i].child)
continue;
- // free(n->branch[i].child);
DisconBranch(n, i);
rtp->EntryCount--;
- if (rtp->StatFlag)
- rtp->ElimCount++;
}
- //free(n);
}
return 0;
}
int RTreeClose(RTree_t * rtp)
{
RTreeClose2(rtp, rtp->root);
- free(rtp->root);
free(rtp);
return 0;
}
/* RTreeInsert(RTree_t*rtp, Rect_t*r, int data, Node_t**n, int level) { */
register int i;
register Node_t *newroot;
- Node_t *newnode=0;
+ Node_t *newnode;
Branch_t b;
int result = 0;
b.child = newnode;
AddBranch(rtp, &b, newroot, NULL);
*n = newroot;
- // rtp->root = newroot;
rtp->EntryCount += 2;
result = 1;
}
/* RTreeInsert2(RTree_t*rtp, Rect_t*r,
int data, Node_t*n, Node_t**new, int level) {
*/
- register int i=0;
+ register int i;
Branch_t b;
- Node_t *n2=0;
+ Node_t *n2;
assert(r && n && new);
assert(level >= 0 && level <= n->level);
*/
struct ListNode *NewListNode()
{
- return (struct ListNode *) NEW(sizeof(struct ListNode));
+ return (struct ListNode *) malloc(sizeof(struct ListNode));
}
#endif
*/
int PickBranch(Rect_t * r, Node_t * n)
{
- register Rect_t *rr=0;
- register int i=0, flag=1, increase=0, bestIncr=0, area=0, bestArea=0;
- int best=0;
+ register Rect_t *rr;
+ register int i, flag, increase, bestIncr, area, bestArea;
+ int best;
assert(r && n);
+ flag = 1;
for (i = 0; i < NODECARD; i++) {
if (n->branch[i].child) {
Rect_t rect;
#include <errno.h>
#include <string.h>
-#include <unistd.h>
+//#include <unistd.h>
#include <memory.h>
#include <gvc.h>
#include "xlabels.h"
+#ifdef HAVE_GETOPT_H
+#include <getopt.h>
+#else
+#include "compat_getopt.h"
+#endif
+
+
#if 0
#define POINTS_PER_INCH 72
#define N_NEW(n,t) (t*)calloc((n),sizeof(t))
static int Verbose;
extern pointf edgeMidpoint(graph_t * g, edge_t * e);
-static inline pointf pointfof(double x, double y)
+static pointf pointfof(double x, double y)
{
pointf r;
#include "index.h"
#include <stdio.h>
#include <assert.h>
-#include <limits.h>
#include "logic.h"
#include "arith.h"
#include "rectangle.h"
/*-----------------------------------------------------------------------------
| Calculate the n-dimensional area of a rectangle
-----------------------------------------------------------------------------*/
-unsigned int RectArea(Rect_t * r)
+int RectArea(Rect_t * r)
{
- register int i;
- unsigned int area;
- assert(r);
+ register int i, area;
+ assert(r);
if (Undefined(r))
return 0;
- /*
- * XXX add overflow checks
- */
area = 1;
for (i = 0; i < NUMDIMS; i++) {
-#if 1 /* overflow check */
- long long a_test = area * r->boundary[i + NUMDIMS] - r->boundary[i];
- if( a_test > UINT_MAX) {
- agerror("label: area too large for rtree\n");
- return UINT_MAX;
- }
- area = a_test;
-#else
- area *= r->boundary[i + NUMDIMS] - r->boundary[i];
-#endif
+ area *= r->boundary[i + NUMDIMS] - r->boundary[i];
}
return area;
}
#ifdef RTDEBUG
void PrintRect(Rect_t *);
#endif
-unsigned int RectArea(Rect_t *);
+int RectArea(Rect_t *);
int Overlap(Rect_t *, Rect_t *);
int Contained(Rect_t *, Rect_t *);
Rect_t CombineRect(Rect_t *, Rect_t *);
-----------------------------------------------------------------------------*/
static void PickSeeds(RTree_t * rtp)
{
- register int i, j;
- unsigned int waste, worst;
- int seed0, seed1;
- unsigned int area[NODECARD + 1];
+ register int i, j, waste, worst, seed0, seed1;
+ int area[NODECARD + 1];
for (i = 0; i < NODECARD + 1; i++)
area[i] = RectArea(&rtp->split.BranchBuf[i].rect);
- //worst = -rtp->split.CoverSplitArea - 1;
- worst=0;
+ worst = -rtp->split.CoverSplitArea - 1;
for (i = 0; i < NODECARD; i++) {
for (j = i + 1; j < NODECARD + 1; j++) {
Rect_t rect;
typedef struct split_q_s {
struct Branch BranchBuf[NODECARD + 1];
struct Rect CoverSplit;
- unsigned int CoverSplitArea;
+ int CoverSplitArea;
struct PartitionVars Partitions[METHODS];
} SplitQ_t;
hp->key = hd_hil_s_from_xy(pi, order);
-#if 0
- if (dtsearch(xlp->hdx, hp) != 0) {
- free(hp);
+ if (dtsearch(xlp->hdx, hp) != 0)
continue;
- }
-#endif
if (!(dtinsert(xlp->hdx, hp)))
return -1;
}
return 0;
}
-static void xlhdxunload(XLabels_t * xlp)
-{
- int size=dtsize(xlp->hdx), freed=0;
- while(dtsize(xlp->hdx) ) {
- Void_t*vp=dtfinger(xlp->hdx);
- assert(vp);
- if(vp) {
- dtdetach(xlp->hdx, vp);
- free(vp);
- freed++;
- }
- }
- assert(size==freed);
-}
-
static int xlspdxload(XLabels_t * xlp)
{
- HDict_t *op=0;
+ HDict_t *op;
for (op = dtfirst(xlp->hdx); op; op = dtnext(xlp->hdx, op)) {
/* tree rectangle data node lvl */
- RTreeInsert(xlp->spdx, &op->d.rect, op->d.data, &xlp->spdx->root, 0);
+ RTreeInsert(xlp->spdx, &op->d.rect, op->d.data, &xlp->spdx->root,
+ 0);
}
return 0;
}
static int xlinitialize(XLabels_t * xlp)
{
- int r=0;
+ int r;
if ((r = xlhdxload(xlp)) < 0)
return r;
if ((r = xlspdxload(xlp)) < 0)
return r;
- xlhdxunload(xlp);
return dtclose(xlp->hdx);
}