Tags:
create new tag
, view all tags
Changes I made to map.svg you can find within the attached file http://www.twiki.org/p/pub/Codev/WhereamiWindows/map.svg.diff.
  • TWiki Initialisation
  • Use CGI instead of Lite version
  • pathes are used from TWiki Configuration
  • switch weather to use the %SEARCH{}% tags

Now comes the big part wink

Perl Modules required

Win32 Binary Distribution for Cygwin Graphviz can be downloaded from http://www.bell-labs.com/cgi-user/wwexptools/gensnapshot/i686-pc-cygwin/graphviz.tar.gz

Changes to Graphiz.pm since IPC:Run does not correctly direct stdin to a process when running within IIS.

include
use IPC::Run qw(run); # qw(run binary);
use File::Temp qw (tempfile );

... snipp ...

sub _as_generic {
  ... snipp ...
  my $program = $self->{DIRECTED} ? 'd:\\twiki\\cygwin\\bin\\dot.exe' : 'd:\\twiki\\cygwin\\bin\\neato.exe';

  # use absolut pathes an include them in ENV{'PATH'}!
  # orig: run [$program, $type], \$dot, ">", binary(), $out;
  
  my ($fh, $name) = tempfile();
  
  print $fh $dot;
  close $fh;
  
  my $tmp = "$program $type $name 2>&1"; 
  $buffer = `$tmp`;
  
  unlink $name; # remove temp 
  
  return $buffer unless defined $output;
}

-- MarkusKling - 21 Jul 2002


Caching

Since I have a very big TWiki with many cross-links online processing is nearly impossible without my servers going to its nees. Additional Changes made
  • use MLDBM to store link and reflink hashes for each web (requires DB_File!)
  • provide oopsref template
  • provide task based whole TWiki rendering
  • configurable time-out and tempdir

Please don't comment the code, its a 1h Hack!

The files:

-- MarkusKling - 21 Jul 2002

Looks very cool. Can you think of any reason why this couldn't work on UNIX?

-- MartinCleaver - 28 Jul 2002

I'm lacking context here... what is this all about? Making a picture based navigation aid? Is this similar to TouchGraph or WebMap? Could you post a screen shot?

thanks -- MattWilkie - 31 Jul 2002

Well it works on Unix since all Perl packages work on Unix wink I made some quick hacks to the RPM packages an the Whereami implementation (see WebMap for the original implementation) to work with Windows directories / input-output streams etc.

What is this all about?

It is Whereami: a WebMap / TouchGraph navigation which is rendered as svg+xml. The graph is first provided in a so called "dot" structure and then converted to svg+xml with an external program called dot. The changes I made were caching these dot structures (providing them is very time consuming) and a seemless integration into the TWiki templates concept.

An example:

You have no SVG Plugin installed. Try http://www.adobe.com
-- MarkusKling - 01 Aug 2002
Topic attachments
I Attachment Action Size Date Who Comment
SVG (Scalable Vector Graphics)svg TWikiDocumentation.svg manage 119.6 K 2002-08-01 - 13:16 MarkusKling Example SVG
Perl source code filepl map.pl manage 6.7 K 2002-07-22 - 12:48 MarkusKling Whereami including Caching
Unknown file formatdiff map.svg.diff manage 1.3 K 2002-07-21 - 20:51 MarkusKling Diff for Version 0.1
Unknown file formattmpl oopsref.tmpl manage 0.5 K 2002-07-22 - 12:49 MarkusKling OOps Template
GIFgif template.gif manage 62.2 K 2002-08-01 - 13:26 MarkusKling The TWiki oops-template in action
Topic revision: r5 - 2002-08-01 - MarkusKling
 
Twitter Delicious Facebook Digg Google Bookmarks E-mail LinkedIn Reddit StumbleUpon    
  • Download TWiki
TWiki logo Powered by PerlIdeas, requests, problems regarding TWiki? Send feedback. Ask community in the support forum.
Copyright © 1999-2012 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.