Hello community,
here is the log from the commit of package step for openSUSE:Factory checked in at 2015-02-11 16:42:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/step (Old)
and /work/SRC/openSUSE:Factory/.step.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "step"
Changes:
--------
--- /work/SRC/openSUSE:Factory/step/step.changes 2015-01-21 22:13:48.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.step.new/step.changes 2015-02-11 16:42:32.000000000 +0100
@@ -1,0 +2,7 @@
+Sun Feb 1 11:24:50 UTC 2015 - tittiatcoke@gmail.com
+
+- Update to KDE Applications 14.12.2
+ * KDE Applications 14.12.2
+ * See https://www.kde.org/announcements/announce-applications-14.12.2.php
+
+-------------------------------------------------------------------
Old:
----
step-14.12.1.tar.xz
New:
----
step-14.12.2.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ step.spec ++++++
--- /var/tmp/diff_new_pack.QQ9CwC/_old 2015-02-11 16:42:33.000000000 +0100
+++ /var/tmp/diff_new_pack.QQ9CwC/_new 2015-02-11 16:42:33.000000000 +0100
@@ -1,7 +1,7 @@
#
# spec file for package step
#
-# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
Name: step
-Version: 14.12.1
+Version: 14.12.2
Release: 0
Summary: An interactive physics simulator
License: GPL-2.0+
++++++ step-14.12.1.tar.xz -> step-14.12.2.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/step-14.12.1/CMakeLists.txt new/step-14.12.2/CMakeLists.txt
--- old/step-14.12.1/CMakeLists.txt 2014-12-30 07:16:08.000000000 +0100
+++ new/step-14.12.2/CMakeLists.txt 2015-01-26 06:26:30.000000000 +0100
@@ -31,7 +31,7 @@
# Note: Disabled temporarily because WorldCopyTestSolver inherits both Body
# and Force. And both of these are now inheriting Item, which
# creates an error. This needs to be sorted out.
- # add_subdirectory(stepcore_tests)
+ add_subdirectory(stepcore_tests)
endif (EIGEN2_FOUND)
install(FILES step.appdata.xml DESTINATION ${SHARE_INSTALL_PREFIX}/appdata/)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/step-14.12.1/TODO new/step-14.12.2/TODO
--- old/step-14.12.1/TODO 2014-12-30 07:16:08.000000000 +0100
+++ new/step-14.12.2/TODO 2015-01-26 06:26:30.000000000 +0100
@@ -1,22 +1,25 @@
0. Urgent / Important
-* Go through all the STEPCORE_META_OBJECT calls and see how they need to be
- changed after the big refactor.
- - This means actually understanding STEPCORE_META_OBJECT, which seems to be
+* Go through all the STEPCORE_META_OBJECT calls and see how they need
+ to be changed after the big refactor.
+ + This means actually understanding STEPCORE_META_OBJECT, which seems to be
undocumented...
1. Bugs / Issues
-* Soft bodies lose their structure if they get crushed by something heavy.
+ * Crashes
+ * Crash when adding weightforce in tutorial 4 [arkro]
+ https://bugs.kde.org/show_bug.cgi?id=331473
+ * Soft bodies lose their internal structure if they get crushed. ----
2. StepCore.
* implement compile flags:
- - STEPCORE_WITH_QT
- - STEPCORE_WITH_ERRORS
- - STEPCORE_WITH_NAMEPROP
- - STEPCORE_WITH_GUIPROPS
+ + STEPCORE_WITH_QT
+ + STEPCORE_WITH_ERRORS
+ + STEPCORE_WITH_NAMEPROP
+ + STEPCORE_WITH_GUIPROPS
* unit tests
* movement restrictions (IN PROGRESS)
* collision detection with friction (IN PROGRESS)
@@ -24,7 +27,6 @@
* correctly handle stiff ODE
* separate position and coordinate (PARTLY DONE)
(for independent tolerance settings, symplectic solvers)
-* global error estimation (requires jacobian ?) (DONE)
* multistep solvers
* symplectic and other nice solvers
* implicit solvers (!)
@@ -39,17 +41,11 @@
3. Step.
* SVG theming
-* do calculations in separate thread (DONE)
-* use statusbar or small graphicsitem to notify
- user when creating items (DONE)
* saving animation (navigation through time)
-* units for all quantitis, units conversion (DONE)
* custom scene background (PARTLY DONE)
-* nice-looking descriptions for all bodies and parameters
- (with references to wikipedia or wikibooks ?) (DONE)
-* configurable simulation-time controllers (DONE)
-* configurable plots and summaries (DONE)
-* KHotNewStuff for sharing experiments (Downloading: DONE)
+* KHotNewStuff for sharing experiments
+ + Downloading DONE
+ + Upload ----
* Tutorials (series of experiments with explanations)
* define multiple coordinate system and provide an ability
to translate vector coordinates between them
@@ -93,7 +89,7 @@
For details, see the list above.
* Add missing object types
- + half plane (ground)
+ + half plane (ground) [rahulch]
+ rope(?)
* Add missing physics concepts
+ coefficient of restitution
@@ -102,3 +98,10 @@
+ Add timeline
+ Improve selection, moving and resizing of objects.
+
+ * New concepts
+ + Add materials [ingwa]
+
+ * Step file format version 2.0
+ + refactor
+ - Item::Color --> Material
+ + Materials
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/step-14.12.1/step/polygongraphics.cc new/step-14.12.2/step/polygongraphics.cc
--- old/step-14.12.1/step/polygongraphics.cc 2014-12-30 07:16:08.000000000 +0100
+++ new/step-14.12.2/step/polygongraphics.cc 2015-01-26 06:26:30.000000000 +0100
@@ -32,7 +32,7 @@
#include <QKeyEvent>
#include <QPainter>
#include <KLocale>
-#include <KDebug>
+#include <QDebug>
RigidBodyGraphicsItem::RigidBodyGraphicsItem(StepCore::Item* item, WorldModel* worldModel)
: StepGraphicsItem(item, worldModel)
@@ -65,18 +65,29 @@
return _painterPath;
}
-void RigidBodyGraphicsItem::paint(QPainter* painter, const QStyleOptionGraphicsItem* /*option*/, QWidget* /*widget*/)
+void RigidBodyGraphicsItem::paint(QPainter* painter, const QStyleOptionGraphicsItem* /*option*/,
+ QWidget* /*widget*/)
{
//int renderHints = painter->renderHints();
painter->setRenderHint(QPainter::Antialiasing, true);
QColor color = QColor::fromRgba(rigidBody()->color());
- if(isItemHighlighted()) color = highlightColor(color);
+ if (isItemHighlighted()) {
+ color = highlightColor(color);
+ }
painter->setPen(Qt::NoPen);
painter->setBrush(QBrush(color));
painter->drawPath(_painterPath);
+ if (!_markPath.isEmpty()) {
+ QPen pen(color);
+ pen.setWidth(0);
+ painter->setPen(pen);
+ painter->setBrush(QColor(Qt::white));
+ painter->drawPath(_markPath);
+ }
+
if(_isSelected) {
double s = currentViewScale();
QRectF rect = _painterPath.boundingRect();
@@ -235,15 +246,24 @@
_painterPath = QPainterPath();
_painterPath.setFillRule(Qt::WindingFill);
+ _markPath = QPainterPath();
+ _painterPath.setFillRule(Qt::WindingFill);
+
double s = currentViewScale();
double radius = disk()->radius();
- if(radius > 1/s) {
+ if (radius > 1/s) {
_painterPath.addEllipse(-radius, -radius, 2*radius, 2*radius);
- //_painterPath = QMatrix().rotate(disk()->angle() * 180 / StepCore::Constants::Pi).map(_painterPath);
+
+ _markPath.moveTo(0, 0);
+ _markPath.arcTo(QRectF(-radius, -radius, 2 * radius, 2 * radius),
+ -15.0, 30.0);
+ _markPath.closeSubpath();
} else {
_painterPath.addEllipse(-1/s, -1/s, 2/s, 2/s);
+ // Don't need a marker when the disk is too small to see in detail.
}
+ _markPath = QMatrix().rotate(disk()->angle() * 180 / StepCore::Constants::Pi).map(_markPath);
RigidBodyGraphicsItem::viewScaleChanged();
}
@@ -467,7 +487,7 @@
showMessage(MessageFrame::Information,
i18n("Click on the scene to add new vertex or press Enter to finish"));
}
-
+
//fixCenterOfMass();
//fixInertia();
return true;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/step-14.12.1/step/polygongraphics.h new/step-14.12.2/step/polygongraphics.h
--- old/step-14.12.1/step/polygongraphics.h 2014-12-30 07:16:08.000000000 +0100
+++ new/step-14.12.2/step/polygongraphics.h 2015-01-26 06:26:30.000000000 +0100
@@ -54,6 +54,7 @@
protected:
StepCore::RigidBody* rigidBody() const;
QPainterPath _painterPath;
+ QPainterPath _markPath;
ArrowHandlerGraphicsItem* _velocityHandler;
CircularArrowHandlerGraphicsItem* _angularVelocityHandler;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/step-14.12.1/step.appdata.xml new/step-14.12.2/step.appdata.xml
--- old/step-14.12.1/step.appdata.xml 2014-12-30 07:16:08.000000000 +0100
+++ new/step-14.12.2/step.appdata.xml 2015-01-26 06:26:30.000000000 +0100
@@ -120,6 +120,7 @@
<li xml:lang="es">Partículas, muelles con amortiguación, fuerzas gravitatorias y de Coulomb</li>
<li xml:lang="et">Osakesed, vedrud, mis arvestavad sumbuvusega, gravitatsiooni- ja Coulomb'i jõuga</li>
<li xml:lang="fi">Hiukkaset, jouset vaimennuksella, painovoima ja Coulombin voima</li>
+ <li xml:lang="fr">Particules, ressorts avec amortissement, forces gravitationnelle et coulombienne</li>
<li xml:lang="it">Particelle, molle smorzate, forze gravitazionali e coulombiane</li>
<li xml:lang="nds">Deeltjes, Feddern mit Dämpen, Swoor- un Coulomb-Kräft</li>
<li xml:lang="nl">Deeltjes, veren met demping, zwaarte- en elektrische krachten</li>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/step-14.12.1/stepcore/CLASSES new/step-14.12.2/stepcore/CLASSES
--- old/step-14.12.1/stepcore/CLASSES 2014-12-30 07:16:08.000000000 +0100
+++ new/step-14.12.2/stepcore/CLASSES 2015-01-26 06:26:30.000000000 +0100
@@ -45,7 +45,7 @@
[time, timeScale, bodies, forces, joints, solvers...]
* Body{body.h} Anything that has dynamic variables that
- require ODE integration
+ [material, =0] require ODE integration
* Particle
* ChargedParticle
* GasParticle
@@ -94,6 +94,8 @@
Used by ConstraintSolver
[...]
+* Material stores material properties
+
* Factory Creates new objects from name
* MetaProperty Meta information about a property
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/step-14.12.1/stepcore/CMakeLists.txt new/step-14.12.2/stepcore/CMakeLists.txt
--- old/step-14.12.1/stepcore/CMakeLists.txt 2014-12-30 07:16:08.000000000 +0100
+++ new/step-14.12.2/stepcore/CMakeLists.txt 2015-01-26 06:26:30.000000000 +0100
@@ -2,6 +2,8 @@
set(stepcore_SRCS
constants.cc
+ material.cc
+
# Base objects
object.cc
item.cc
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/step-14.12.1/stepcore/body.h new/step-14.12.2/stepcore/body.h
--- old/step-14.12.1/stepcore/body.h 2014-12-30 07:16:08.000000000 +0100
+++ new/step-14.12.2/stepcore/body.h 2015-01-26 06:26:30.000000000 +0100
@@ -28,6 +28,7 @@
#include <vector> // XXX: Replace if Qt is enabled.
#include "types.h"
+#include "material.h"
#include "item.h"
@@ -35,6 +36,7 @@
{
+class Material;
/** \ingroup bodies
* \brief Interface for bodies
*
@@ -47,10 +49,17 @@
public:
Body(const QString& name = QString())
: Item(name)
+ , _material(&GenericMaterial)
, _variablesOffset(0)
{}
virtual ~Body() {}
+ /** Get the material of the body. */
+ Material *material() const { return _material; }
+
+ /** Set material of the body (FIXME: Must be enhanced with META_PROPERTY later) */
+ void setMaterial(Material *mtrl) { _material = mtrl; }
+
/** Get count of dynamic variables (not including velocities) */
virtual int variablesCount() = 0;
@@ -91,6 +100,8 @@
private:
friend class World;
+ Material *_material;
+
/** \internal Set offset of body's variables in global arrays */
void setVariablesOffset(int variablesOffset)
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/step-14.12.1/stepcore/collisionsolver.cc new/step-14.12.2/stepcore/collisionsolver.cc
--- old/step-14.12.1/stepcore/collisionsolver.cc 2014-12-30 07:16:08.000000000 +0100
+++ new/step-14.12.2/stepcore/collisionsolver.cc 2015-01-26 06:26:30.000000000 +0100
@@ -1044,7 +1044,7 @@
double vrel = contact->vrel[0];
STEPCORE_ASSERT_NOABORT( vrel < 0 );
-
+
Vector2d r0 = contact->points[0] - body0->position();
double r0n = r0[0]*contact->normal[1] - r0[1]*contact->normal[0];
double term0 = contact->normal.dot(
@@ -1160,7 +1160,7 @@
double b = 1; // coefficient of bounceness
double vrel = contact->vrel[0];
STEPCORE_ASSERT_NOABORT( vrel < 0 );
-
+
Vector2d j = contact->normal * ( -(1+b)*vrel / (1/disk0->mass() + 1/particle1->mass()) );
disk0->setVelocity(disk0->velocity() - j / disk0->mass());
particle1->setVelocity(particle1->velocity() + j / particle1->mass());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/step-14.12.1/stepcore/item.h new/step-14.12.2/stepcore/item.h
--- old/step-14.12.1/stepcore/item.h 2014-12-30 07:16:08.000000000 +0100
+++ new/step-14.12.2/stepcore/item.h 2015-01-26 06:26:30.000000000 +0100
@@ -49,8 +49,11 @@
public:
/** Constructs Item */
Item(const QString& name = QString())
- : Object(name), _world(NULL), _group(NULL),
- _objectErrors(NULL), _color(0xff000000) {}
+ : Object(name)
+ , _world(NULL)
+ , _group(NULL)
+ , _objectErrors(NULL)
+ , _color(0xff000000) {}
/** Constructs a copy of item */
Item(const Item& item) : Object() { *this = item; }
/** Destroys Item */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/step-14.12.1/stepcore/material.cc new/step-14.12.2/stepcore/material.cc
--- old/step-14.12.1/stepcore/material.cc 1970-01-01 01:00:00.000000000 +0100
+++ new/step-14.12.2/stepcore/material.cc 2015-01-26 06:26:30.000000000 +0100
@@ -0,0 +1,43 @@
+/* This file is part of StepCore library.
+ Copyright (C) 2007 Vladimir Kuznetsov