至少有两种方法可以按比例缩放。由于您将知道投影(房间)尺寸并且您应该知道至少一个缩放尺寸(假设您知道舞台的宽度),您可以按比例缩放objectLengthInFeet / roomWidthInFeet * stageWidthInPixels
.
假设舞台宽度为 500 像素,一旦您知道房间尺寸和舞台宽度:
var stageWidth = 500,
roomWidth = parseFloat($('#width').val(), 10) || 0, // default to 0 if input is empty or not parseable to number
roomHeight = parseFloat($('#height').val(), 10) || 0, // default to 0 if input is empty or not parseable to number
setRoomDimensions = function (e) {
roomWidth = parseFloat($('#width').val(), 10);
roomHeight = parseFloat($('#height').val(), 10);
},
feetToPixels = function feetToPixels(feet) {
var scaled = feet / roomWidth * stageWidth;
return scaled;
};
这是一个演示:http: //jsfiddle.net/uQDnY/