Hey there, I'm currently working on implementing a coordinate axis using views to create a reusable module. However, when I integrate the module, I end up losing all alignment and origin properties, and I am unable to modify them in my main code. Can you help me figure out what I might be missing?
main.js
define(function(require) {
var Engine = famous.core.Engine;
var Modifier = famous.core.Modifier;
var Transform = famous.core.Transform;
var StateModifier = famous.modifiers.StateModifier;
var WireFrameView = require('WireFrameView');
var cContainerElement;
var oMainContext;
var fAngle = 0.0;
var oWireFrameView = new WireFrameView();
var oViewRotator = new Modifier({
align: [.5, .5],
origin: [.5, .5]
});
var oAlignOriginModifier = new StateModifier({
align: [.5, .5],
origin: [.5, .5]
});
cContainerElement = document.getElementById("FamousContent");
oMainContext = Engine.createContext(cContainerElement);
oMainContext.add(oWireFrameView);
oViewRotator.transformFrom(rotateYY);
return;
});
WireFrameView.js
define(function(require, exports, module) {
var PhysicsEngine = famous.physics.PhysicsEngine;
var View = famous.core.View;
var Modifier = famous.core.Modifier;
var Transform = famous.core.Transform;
var StateModifier = famous.modifiers.StateModifier;
var Surface = famous.core.Surface;
var Engine = famous.core.Engine;
cContainerElement = document.getElementById("FamousContent");
oMainContext = Engine.createContext(cContainerElement);
function WireFrameView() {
View.apply(this, arguments);
addframe.call(this);
}
function addframe() {
var oXAxis = new Surface({
size: [undefined, 1],
properties: {
backgroundColor: 'purple'
}
});
var oCenterCircle = new Surface({
size: [15, 15],
properties: {
border: '1px solid blue',
borderRadius: '7px'
}
});
var oYAxis = new Surface({
size: [1, undefined],
properties: {
backgroundColor: 'red'
}
});
var oAlignOriginModifier = new StateModifier({
align: [0.5, 0.5],
origin: [.5, .5]
});
var lightSquare = new Surface({
size: [100, 100],
properties: {
color: '#000000',
backgroundColor: '#aaaaaa'
}
});
var alignOriginModifiersq = new StateModifier({
align: [0.5, 0.5],
origin: [1, 1]
});
oMainContext.add(alignOriginModifiersq)
.add(lightSquare);
var node = oMainContext.add(oAlignOriginModifier);
node.add(oXAxis);
node.add(oYAxis);
node.add(oCenterCircle);
}
WireFrameView.prototype = Object.create(View.prototype);
WireFrameView.prototype.constructor = WireFrameView;
WireFrameView.DEFAULT_OPTIONS = {};
module.exports = WireFrameView;
});
I've managed to display the x-axis at the top, but strangely the y-axis is not showing up at all. The components seem to work fine independently.