Sections
Getting Started
  • Work through the tutorial available on the downloads page.
  • Read and/or subscribe to the support forums.
  • Peruse some images of the software in action.
  • Watch an instructional video 
Enterprise Version
A commercial version of openWind is available for clients who require:
  • Deep Array Wake Models
  • optimization for cost of energy
  • shadow-flicker
  • multi-threaded wind-flow calculation
  • sector management
  • optimization enhancements
  • grid layout tool
  • stream-lined interface
  • authenticated reports
Licensing
Please contact the openWind team regarding:
  • developing products from the openWind codebase
  • partnering with us to develop specialist modules
Document Actions
  • Send this page to somebody
  • Print this page

Error

Up to Software Developers

Error

Posted by Ehsan at June 01. 2009

Hi,


i download source on 30 may 2009


Here is the error i get when i compile


C:\upp\uppsrc\Geom\geometry.cpp: In function 'double Upp::Bezier2Length(Upp::Pointf, Upp::Pointf, Upp::Pointf, double)':
C:\upp\uppsrc\Geom\geometry.cpp:55: error: 'ScalarProduct' was not declared in this scope
C:\upp\uppsrc\Geom\geometry.cpp:56: error: 'VectorProduct' was not declared in this scope


Please tell what is going wrong.


Regards



Re: Error

Posted by nick at June 01. 2009
What platform are you compiling under please? This error sounds familiar but I haven't seen it recently. I suspect that you can just comment out the two lines but I'd like to know under what circumstances this error ocurrs so I can try to stop it in future.
Cheers,
Nick

Re: Error

Posted by Ehsan at June 01. 2009

Hi Nick,


Thanks for reply.


I use Windows Xp SP2 , U++ 2008 , Plugins (z , tiff, geotiff ) from the link provided on source download page.


its in geometry.cpp, commenting out will not solve the problem. Please see


{
 Pointf v = b - a, w = (c - b) - v;
 v *= 2;
 double w2 = Squared(w);
 if(fabs(w2) <= 1e-100)
  return t * Distance(c, a);
 double k = ScalarProduct(v, w) / (2 * w2);
 double d = fabs(VectorProduct(v, w)) / (2 * w2);

 double wl = sqrt(w2);
 double x = t + k;
 if(fabs(d) <= 1e-100)
  return wl * x * fabs(x) / 2;
 return wl * (x * hypot(x, d) + (d * d) * argsinh(x / d));


there are comments in geometry.cpp


// temporary fix by Mirek Fidler:
//inline double ScalarProduct(Sizef a, Sizef b) { return a.cx * b.cx + a.cy * b.cy; }
//inline double VectorProduct(Sizef a, Sizef b) { return a.cx * b.cy - a.cy * b.cx; }


if i uncomment it, i get error for previous defined function. it is in Core


 friend T      ScalarProduct(Size_ a, Size_ b) { return a.cx * b.cx + a.cy * b.cy; }
 friend T      VectorProduct(Size_ a, Size_ b) { return a.cx * b.cy - a.cy * b.cx; }


I comment out these and uncomment the fix by Mirek Fidler. i get error


C:/upp/examples/openWind/RasterLayer.cpp:2424: undefined reference to `Upp::Value::Value(long)'
I comment out original string and use "test" to gt


// String s = Format("Failed to initialise the grid: left=%f,right=%f,top=%f,bottom=%f,nX=%d,nY=%d,resX=%f,resY=%f",
//       rc.left,rc.right,rc.top,rc.bottom,nX,nY,resX,resY);
  String s = "Failed to initialise the grid";


It go built but please suggest the better way.


thanks


Ehsan


Re: Error

Posted by Ehsan at June 02. 2009

Hi nick,


sorry that i have more to tell. Its related to the above post


After successful build or release the exe doesnot run. dbl clk on openwind.exe produces no effect.I tried on other system also.


I use standard build method with MinGW Optimal.


OCOE and all others donot build , give errors.


Also from IDE,  Execute doesnot work. (windows running process list doesnot have openwind.exe.it is there when i click  


"run in debugger" but its UI doesnot show ) 


Regards


Ehsan



Re: Error

Posted by nick at June 02. 2009

Yeah I can't get it to work under MinGW either but then I use MSC9 under Windows.


Try using MSC9 with SDKv6.1 both downloadable for free from Microsoft.


Nick


Powered by Ploneboard