Commit ac217e50 authored by hrchilds's avatar hrchilds
Browse files

Update from December 9, 2003

git-svn-id: http://visit.ilight.com/svn/visit/trunk/src@139 18c085ea-50e0-402c-830e-de6fd14e8384
parent 64f49617
......@@ -456,9 +456,9 @@ env command for configure.
#
# Build and install it in the visit directory.
#
gunzip visit031117.tar.gz
tar xf visit031117.tar
cd visit031117/config-site
gunzip visit031215.tar.gz
tar xf visit031215.tar
cd visit031215/config-site
echo VISITHOME=`cat ../../visitpath` > `hostname`.conf
cat Template.conf >> `hostname`.conf
cd ..
......@@ -467,11 +467,11 @@ make
clearcase_bin/visit-bin-dist
# Use the appropriate install command based on the operating system on
# which you built VisIt.
clearcase_bin/visit-install 1.2.4 aix `cat ../visitpath`
clearcase_bin/visit-install 1.2.4 irix6 `cat ../visitpath`
clearcase_bin/visit-install 1.2.4 linux `cat ../visitpath`
clearcase_bin/visit-install 1.2.4 osf1 `cat ../visitpath`
clearcase_bin/visit-install 1.2.4 sunos5 `cat ../visitpath`
clearcase_bin/visit-install 1.2.5 aix `cat ../visitpath`
clearcase_bin/visit-install 1.2.5 irix6 `cat ../visitpath`
clearcase_bin/visit-install 1.2.5 linux `cat ../visitpath`
clearcase_bin/visit-install 1.2.5 osf1 `cat ../visitpath`
clearcase_bin/visit-install 1.2.5 sunos5 `cat ../visitpath`
When running the configure script you can enable or disable certain dependent
packages. All the configure options are listed at the beginning of the
......
......@@ -17,7 +17,7 @@ Unix:
where
"version" will be 1.2.4 for the current distribution.
"version" will be 1.2.5 for the current distribution.
"platform" will be one of the following: aix, irix6, linux, osf1,
or sunos5 depending on the machine. The one you use should match
......@@ -28,17 +28,17 @@ Unix:
For example
visit-install 1.2.4 irix6 /usr/local/visit
visit-install 1.2.5 irix6 /usr/local/visit
will install the irix6, 1.2.4 version of visit in the directory
will install the irix6, 1.2.5 version of visit in the directory
"/usr/local/visit". Note that you will need to have the file
"visit1_2_4.irix6.tar.gz" present in the current directory for this
"visit1_2_5.irix6.tar.gz" present in the current directory for this
to function properly. You can install multiple binaries into the
same directory. For example, you could then execute
visit-install -a 1.2.4 linux /usr/local/visit
visit-install -a 1.2.5 linux /usr/local/visit
to add a linux, 1.2.4 version of visit to the same directory.
to add a linux, 1.2.5 version of visit to the same directory.
2. Add the bin directory below the installation directory
(/usr/local/visit/bin in our example) to each user's search path.
......@@ -76,15 +76,15 @@ Unix:
Windows:
1. Copy the file visit1.2.4.exe to your desktop.
1. Copy the file visit1.2.5.exe to your desktop.
2. Right click on the visit1.2.4.exe icon using your mouse and selecting
"Extract to folder C:\...\Desktop\visit1.2.4" from the popup menu. A
2. Right click on the visit1.2.5.exe icon using your mouse and selecting
"Extract to folder C:\...\Desktop\visit1.2.5" from the popup menu. A
window will popup as the file is extracted into the directory. Once
the process is complete a "visit1.2.4" directory icon should appear on
the process is complete a "visit1.2.5" directory icon should appear on
your desktop.
3. Double click on the "visit1.2.4" directory icon bringing up a file
3. Double click on the "visit1.2.5" directory icon bringing up a file
system browsing window.
4. Double click on the SETUP icon with the computer display icon to run
......
......@@ -620,6 +620,13 @@ QvisFilePanel::UpdateFileList(bool doAll)
// Brad Whitlock, Tue Sep 9 15:40:40 PST 2003
// I made it return early if the slider is down.
//
// Brad Whitlock, Mon Dec 8 15:39:56 PST 2003
// I changed the code so the file server's open file is never changed unless
// it is changed to the same file that is open. The purpose of that is to
// expand databases that we previously displayed as a single file (like
// .visit files). This also allows the selected files list to show the active
// time state for the database.
//
// ****************************************************************************
void
......@@ -631,15 +638,15 @@ QvisFilePanel::UpdateAnimationControls(bool doAll)
// currentFile changed. Update the file server.
if(globalAtts->IsSelected(6) || doAll)
{
QualifiedFilename qf(globalAtts->GetCurrentFile());
if (globalAtts->GetCurrentFile() == "notset")
{
fileServer->CloseFile();
fileServer->Notify();
}
else
else if(fileServer->GetOpenFile() == qf)
{
QualifiedFilename qf(globalAtts->GetCurrentFile());
TRY
{
fileServer->OpenFile(qf, globalAtts->GetCurrentState());
......
......@@ -1229,6 +1229,10 @@ QvisPlotManagerWidget::drawPlots()
// the first active plot since that is now done by the viewer when the
// active plots are changed.
//
// Brad Whitlock, Mon Dec 8 15:43:08 PST 2003
// I removed code to open a database in the file server since we now do
// not want the open database to change when we select active plots.
//
// ****************************************************************************
void
......@@ -1288,23 +1292,6 @@ QvisPlotManagerWidget::setActivePlots()
viewer->SetActivePlots(newPlotSelection, newOperatorSelection,
newExpandedPlots);
}
// If there was at least 1 selected plot, select that plot's file in
// file fileServer if it is not already selected.
if(found)
{
// Create a constant reference to the first selected plot.
const Plot &selFile = plotList->operator[](firstSelectedFile);
QualifiedFilename qualifiedFile(selFile.GetDatabaseName());
// Set the fileServer's active file and notify observers.
// This is mostly to sync them up to the fileServer in case
// They got out of sync.
int timeState = globalAtts->GetCurrentState();
fileServer->OpenFile(qualifiedFile, timeState);
fileServer->Notify();
}
}
}
......
......@@ -29,9 +29,11 @@ enhancements and bug-fixes that were added to this release.</p>
<li>VisIt has new host profiles for lilac (xEDTV).</li>
<li>VisIt supports launching parallel compute engines using the SLURM/SRUN launcher.</li>
<li>VisIt's movie script now uses the name of the session file or Python file as the base name for the movie if no movie base name is specified. This allows movies generated by right clicking on session files on the Windows platform to have different names thus avoiding the need to constantly move image files before generating a new movie.</li>
<li>VisIt no longer changes the open database when you select different active plots. Several users disliked this feature so we removed it. Setting the open database is now only done in the file panel.</li>
</ul>
<p><b><font size="4">Bugs fixed in version 1.2.5</font></b></p>
<ul>
<li>2D views are erroneously recalculated when using Replace after the user has set the 2D view manually.</li>
<li>VisIt's metadata server crashes when trying to access a new database with a fewer number of time states than the one that is already open if the animation time state is greater than the number of time states in the new database.
<li>VisIt's compute engine crashes when you switch back and forth between scalable rendering mode and geometry mode too often when running the compute engine in parallel.
<li>It is difficult to select multiple items with VisIt's plot list.</li>
......
......@@ -1483,10 +1483,13 @@ SetActivePlotsAction::~SetActivePlotsAction()
// Creation: Fri Apr 11 07:50:49 PDT 2003
//
// Modifications:
// Eric Brugger, Mon Jul 28 16:48:01 PDT 2003
// Added code to make the database for the first active plot the database
// for the plotlist when the plotlist has at least one active plot.
//
// Eric Brugger, Mon Jul 28 16:48:01 PDT 2003
// Added code to make the database for the first active plot the database
// for the plotlist when the plotlist has at least one active plot.
//
// Brad Whitlock, Mon Dec 8 15:25:54 PST 2003
// I removed Eric's code.
//
// ****************************************************************************
void
......@@ -1501,21 +1504,6 @@ SetActivePlotsAction::Execute()
bool moreThanPlotsValid = args.GetBoolFlag();
window->GetAnimation()->GetPlotList()->SetActivePlots(activePlots,
activeOperators, expandedPlots, moreThanPlotsValid);
//
// If there is at least one active plot then make the database associated
// with the first active plot the database for the plotlist.
//
if (!activePlots.empty())
{
ViewerPlotList *plotList = window->GetAnimation()->GetPlotList();
ViewerPlot *plot = plotList->GetPlot(activePlots[0]);
const std::string &hostName = plot->GetHostName();
const std::string &dbName = plot->GetDatabaseName();
plotList->SetHostDatabaseName(hostName + std::string(":") + dbName);
}
}
///////////////////////////////////////////////////////////////////////////////
......
......@@ -324,6 +324,10 @@ ViewerAnimation::GetFrameIndex() const
// Eric Brugger, Fri Dec 5 16:42:30 PST 2003
// I added code to set view limit merging if the frame was changed.
//
// Eric Brugger, Tue Dec 9 09:03:30 PST 2003
// I corrected a bug I introduced in the previous change with the
// setting of view limit merging.
//
// ****************************************************************************
void
......@@ -335,6 +339,7 @@ ViewerAnimation::NextFrame()
{
case Looping:
// Move to the next frame.
SetMergeViewLimits(true);
SetFrameIndex(nextFrameIndex);
break;
case PlayOnce:
......@@ -344,10 +349,16 @@ ViewerAnimation::NextFrame()
if(nextFrameIndex == 0)
Stop(true);
else
{
SetMergeViewLimits(true);
SetFrameIndex(nextFrameIndex);
}
}
else
{
SetMergeViewLimits(true);
SetFrameIndex(nextFrameIndex);
}
break;
case Swing:
// If we're playing then make sure that we reverse the play direction
......@@ -357,18 +368,16 @@ ViewerAnimation::NextFrame()
if(nextFrameIndex == 0)
mode = ReversePlayMode;
else
{
SetMergeViewLimits(true);
SetFrameIndex(nextFrameIndex);
}
}
else
{
SetMergeViewLimits(true);
SetFrameIndex(nextFrameIndex);
}
//
// If we changed frames, then turn on view limit merging.
//
if (curFrame == nextFrameIndex)
{
SetMergeViewLimits(true);
}
}
}
......@@ -395,6 +404,10 @@ ViewerAnimation::NextFrame()
// Eric Brugger, Fri Dec 5 16:42:30 PST 2003
// I added code to set view limit merging if the frame was changed.
//
// Eric Brugger, Tue Dec 9 09:03:30 PST 2003
// I corrected a bug I introduced in the previous change with the
// setting of view limit merging.
//
// ****************************************************************************
void
......@@ -406,6 +419,7 @@ ViewerAnimation::PrevFrame()
{
case Looping:
// Move to the previous frame.
SetMergeViewLimits(true);
SetFrameIndex(prevFrameIndex);
break;
case PlayOnce:
......@@ -415,10 +429,16 @@ ViewerAnimation::PrevFrame()
if(prevFrameIndex == nFrames-1)
Stop(true);
else
{
SetMergeViewLimits(true);
SetFrameIndex(prevFrameIndex);
}
}
else
{
SetMergeViewLimits(true);
SetFrameIndex(prevFrameIndex);
}
break;
case Swing:
// If we're playing then make sure that we reverse the play direction
......@@ -428,18 +448,16 @@ ViewerAnimation::PrevFrame()
if(prevFrameIndex == nFrames-1)
mode = PlayMode;
else
{
SetMergeViewLimits(true);
SetFrameIndex(prevFrameIndex);
}
}
else
{
SetMergeViewLimits(true);
SetFrameIndex(prevFrameIndex);
}
//
// If we changed frames, then turn on view limit merging.
//
if (curFrame == prevFrameIndex)
{
SetMergeViewLimits(true);
}
}
}
......
......@@ -3432,6 +3432,10 @@ ViewerPlot::GetPlotQueryInfo()
// Sean Ahern, Wed Feb 5 14:34:38 PST 2003
// Removed the ViewerExpressionList for the more general ParsingExprList.
//
// Brad Whitlock, Mon Dec 8 15:23:08 PST 2003
// Added code to handle a possible InvalidVariableException that can be
// thrown out of md->DetermineVarType.
//
// ****************************************************************************
avtVarType
......@@ -3456,8 +3460,25 @@ ViewerPlot::GetVarType()
{
//
// Get the type for the variable.
//
retval = md->DetermineVarType(std::string(variableName));
//
TRY
{
retval = md->DetermineVarType(std::string(variableName));
}
CATCH(VisItException)
{
std::string message("VisIt was unable to determine the variable type for ");
message += hostName;
message += ":";
message += databaseName;
message += "'s ";
message += variableName;
message += " variable.";
Error(message.c_str());
debug1 << "ViewerPlot::GetVarType: Caught an exception!" << endl;
retval = AVT_UNKNOWN_TYPE;
}
ENDTRY
}
}
......
......@@ -1541,6 +1541,11 @@ ViewerPlotList::DeleteActivePlots()
// Programmer: Mark C. Miller
// Creation: November 19, 2003
//
// Modifications:
// Brad Whitlock, Mon Dec 8 15:28:19 PST 2003
// I changed the logic so it does not try and match additional features
// if the databases are not the same in the first place.
//
// ****************************************************************************
int
......@@ -1552,39 +1557,42 @@ ViewerPlotList::FindCompatiblePlot(ViewerPlot *givenPlot)
for (i = 0; i < nPlots; ++i)
{
bool basicCompatiblity = false;
int numFeaturesMatched = 0;
// ignore the the plot in the list that is the same as the given plot
if (plots[i].plot == givenPlot)
continue;
// check basic compatibility
if ((strcmp(plots[i].plot->GetHostName(),
givenPlot->GetHostName()) == 0) &&
(strcmp(plots[i].plot->GetDatabaseName(),
givenPlot->GetDatabaseName()) == 0))
basicCompatiblity = true;
// check for compatibility in other features
if (strcmp(plots[i].plot->GetPlotName(),givenPlot->GetPlotName()) == 0)
numFeaturesMatched++;
if (strcmp(plots[i].plot->GetPluginID(),givenPlot->GetPluginID()) == 0)
numFeaturesMatched++;
if (strcmp(plots[i].plot->GetVariableName(),
givenPlot->GetVariableName()) == 0)
numFeaturesMatched++;
if (plots[i].plot->GetType() == givenPlot->GetType())
numFeaturesMatched++;
if (plots[i].plot->GetNetworkID() == givenPlot->GetNetworkID())
numFeaturesMatched++;
if (plots[i].plot->GetVarType() == givenPlot->GetVarType())
numFeaturesMatched++;
if (basicCompatiblity && (numFeaturesMatched > maxFeaturesMatched))
bool sameHost = strcmp(plots[i].plot->GetHostName(),
givenPlot->GetHostName()) == 0;
bool sameDB = strcmp(plots[i].plot->GetDatabaseName(),
givenPlot->GetDatabaseName()) == 0;
//
// If the host and database are the same, check for compatibility
// in other features.
//
if(sameHost && sameDB)
{
maxFeaturesMatched = numFeaturesMatched;
compatibleIndex = i;
int numFeaturesMatched = 0;
if (strcmp(plots[i].plot->GetPlotName(),givenPlot->GetPlotName()) == 0)
numFeaturesMatched++;
if (strcmp(plots[i].plot->GetPluginID(),givenPlot->GetPluginID()) == 0)
numFeaturesMatched++;
if (strcmp(plots[i].plot->GetVariableName(),
givenPlot->GetVariableName()) == 0)
numFeaturesMatched++;
if (plots[i].plot->GetType() == givenPlot->GetType())
numFeaturesMatched++;
if (plots[i].plot->GetNetworkID() == givenPlot->GetNetworkID())
numFeaturesMatched++;
if (plots[i].plot->GetVarType() == givenPlot->GetVarType())
numFeaturesMatched++;
if (numFeaturesMatched > maxFeaturesMatched)
{
maxFeaturesMatched = numFeaturesMatched;
compatibleIndex = i;
}
}
}
......
......@@ -178,7 +178,9 @@ vtkTimeSliderActor::AddEndCapCells(int center, vtkCellArray *polys)
// Creation: Tue Oct 28 11:05:13 PDT 2003
//
// Modifications:
//
// Brad Whitlock, Tue Dec 9 08:38:22 PDT 2003
// Fixed a bug that caused the end caps to become separated from the main bar.
//
// ****************************************************************************
void
......@@ -196,6 +198,7 @@ vtkTimeSliderActor::CreateSlider(vtkViewport *viewport)
// If we're drawing endcaps, move the bar in a little to make room.
//
float BarHeight = TR[1] - BL[1];
if(BarHeight < 0.f) BarHeight = -BarHeight;
float EndCapRadius = BarHeight / 2.;
if(this->DrawEndCaps != 0)
{
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment