← Back to team overview

kicad-developers team mailing list archive

Re: 3D-Viewer - Request for merge evaluation

 

VERY nice, I wasn't expecting that so fast! :D

Attached is what I think is the "final" patch to make it build right on other
systems. Still haven't heard back from anyone on the wxString/UTF8 thing, but I
*think* this is right, we can always change it later if not.

On Wed, Jun 15, 2016 at 08:40:29PM +0000, Mário Luzeiro wrote:
> Hi Cirilo, Chris,
> 
> As I received so many requests from you ;)
> I implemented the features similar as you describe below.
> Please update, rebuild and retry with the latest updates from my branch.
> 
> I found an easy and elegant way of implement it,
> with just some minimal changes.
> It only add a small overhead time (about 1s or less on some tests I did)
> 
> So, the new features are:
> - Display the progress of raytracing render.
> - If user move with the mouse it will abort the render.
> - It also works on OpenGL mode, if a raytracing render is requested and during the render the mouse is moved,
> it will stop the render and back to OpenGL.
> - This also may fix possible issues on some systems that make the windows not responding because the render took too long. Now the windows is refreshed periodically with the redraws.
> 
> Regards,
> Mario Luzeiro
> ________________________________________
> From: Cirilo Bernardo [cirilo.bernardo@xxxxxxxxx]
> Sent: 15 June 2016 00:40
> 
> Another possible tweak in the raytrace window is to show progress somehow.
> In SolidWorks this is done by showing a small black frame moving around as
> parts of the scene are refined. This is not essential though, only eyecandy,
> but it does help a little on long render jobs because the user can see that
> something is still happening.
> 
> 
> ________________________________________
> From: Chris Pavlina [pavlina.chris@xxxxxxxxx]
> Sent: 14 June 2016 20:15
> 
> 3) Even at the faster speed, the raytracer is too slow and unresponsive.
> 
> 3A) Raytracer UI responsiveness improvements. Allow the user to start dragging
> the PCB around even after the render has started, rather than going completely
> frozen during the render.
> 
>From 3c6b6c4cbacec12692fee7352167dd39c62179d8 Mon Sep 17 00:00:00 2001
From: Chris Pavlina <pavlina.chris@xxxxxxxxx>
Date: Tue, 14 Jun 2016 23:57:42 -0400
Subject: [PATCH] 3D: adjust to build on Linux+clang and OSX

---
 .../3d_rendering/3d_render_raytracing/accelerators/cbvh_pbrt.cpp     | 3 ++-
 pcbnew/exporters/export_vrml.cpp                                     | 5 ++---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/3d-viewer/3d_rendering/3d_render_raytracing/accelerators/cbvh_pbrt.cpp b/3d-viewer/3d_rendering/3d_render_raytracing/accelerators/cbvh_pbrt.cpp
index b93165e..d67f800 100644
--- a/3d-viewer/3d_rendering/3d_render_raytracing/accelerators/cbvh_pbrt.cpp
+++ b/3d-viewer/3d_rendering/3d_render_raytracing/accelerators/cbvh_pbrt.cpp
@@ -2,7 +2,7 @@
  * This program source code file is part of KiCad, a free EDA CAD application.
  *
  * Copyright (C) 2015 Mario Luzeiro <mrluzeiro@xxxxx>
- * Copyright (C) 1992-2015 KiCad Developers, see AUTHORS.txt for contributors.
+ * Copyright (C) 1992-2016 KiCad Developers, see AUTHORS.txt for contributors.
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License
@@ -71,6 +71,7 @@
 #include <vector>
 #include <boost/range/algorithm/partition.hpp>
 #include <boost/range/algorithm/nth_element.hpp>
+#include <mm_malloc.h>
 
 #include <stack>
 #include <wx/debug.h>
diff --git a/pcbnew/exporters/export_vrml.cpp b/pcbnew/exporters/export_vrml.cpp
index 1b60dff..c77a1f3 100644
--- a/pcbnew/exporters/export_vrml.cpp
+++ b/pcbnew/exporters/export_vrml.cpp
@@ -4,7 +4,7 @@
  * Copyright (C) 2009-2013  Lorenzo Mercantonio
  * Copyright (C) 2014  Cirilo Bernado
  * Copyright (C) 2013 Jean-Pierre Charras jp.charras at wanadoo.fr
- * Copyright (C) 2004-2016 KiCad Developers, see change_log.txt for contributors.
+ * Copyright (C) 2004-2016 KiCad Developers, see AUTHORS.txt for contributors.
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License
@@ -1207,8 +1207,7 @@ static void export_vrml_module( MODEL_VRML& aModel, BOARD* aPcb, MODULE* aModule
 
     while( sM != eM )
     {
-        wxFileName modelFileName = wxString::FromUTF8Unchecked(
-            resolver->ResolvePath( sM->m_Filename ) );
+        wxFileName modelFileName = resolver->ResolvePath( sM->m_Filename );
         wrlExt = modelFileName.GetExt();
 
         if( wrlExt.Cmp( wxT( "wrl" ) ) && wrlExt.Cmp( wxT( "WRL" ) )
-- 
2.8.3


Follow ups

References