我有一个OpenLayers地图,它有一个光栅基础层,一个矢量图层和一个标记图层.它们以正确的顺序显示,矢量顶部的标记非常好.
但是当我添加一个SelectFeature控件并将其指向矢量图层时,它会突然在标记图层上方绘制,尽管所有努力都会提升标记图层或设置Z索引.似乎SelectFeature控件会覆盖所有绘图顺序设置.这是设计,还是我能以某种方式克服这个问题?
图层定义:
var baselayer = new OpenLayers.Layer.WMS('Norden',
'http://{myarcgisserver}/ArcGIS/services/mylayer/MapServer/WMSServer', {
layers :'1,2',
transparent :false,
width :'auto',
height :'auto',
filter :null
}, {
isBaseLayer: true,
singleTile :true,
ratio :1,
alpha :false,
transitionEffect :'resize'
});
var vectorLayer = new OpenLayers.Layer.Vector("Work orders", {
projection: new OpenLayers.Projection("EPSG:2400"),
strategies: [new OpenLayers.Strategy.Fixed(), refresh],
protocol: new OpenLayers.Protocol.HTTP({
url: "/WorkOrder/WorkOrders.ashx?output=geojson",
format: new OpenLayers.Format.GeoJSON()
})
});
var markerlayer = new OpenLayers.Layer.Markers("Markers", {
projection: new OpenLayers.Projection("EPSG:2400"),
displayInLayerSwitcher: false
}
);
Run Code Online (Sandbox Code Playgroud)
控件定义:
var selectctrl = new OpenLayers.Control.SelectFeature(
vectorLayer,
{
clickout: true, …Run Code Online (Sandbox Code Playgroud) 谁能解释一下下面的代码吗?那或者向我指出一些可以阐明一些观点的资源:)
它将整数转换为 base62 字符串。
private static $_characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
private static function _convertBase($num)
{
$base = strlen(self::$_characters);
$string = '';
for ($t = floor(log10($num) / log10($base)); $t >= 0; $t--) {
$a = floor($num / pow($base, $t));
$string .= substr(self::$_characters, $a, 1);
$num = $num - ($a * pow($base, $t));
}
return $string;
}
Run Code Online (Sandbox Code Playgroud)
更新:我想问的是:有人可以解释一下下面的算法吗?:) 谢谢。
我正在尝试将我的cvs存储库转换为git并且暂时停留在最后一个问题上.
我目前使用CVS&符号模块在projets之间共享代码.这些允许您基本上将另一个存储库"别名"作为项目中的子目录,因此您可以更新/提交整个项目,并且它包含远程存储库,就像它是一个存储库一样.
我已经看过线程推荐使用子树合并或子模块来执行此操作,参考(svn:externals).这不起作用,因为:
子树合并显然不允许您轻松推回/更新外部回购.
子模块仍然需要您手动推/拉每个子模块.我有大量的子模块,并且每个子模块都会推送我的更改会很乏味,并且可能会导致遗漏,因为更改会忘记提交.
为了清楚起见,我希望有一个git存储库,其中包含其他git存储库作为子目录,并且能够使用一个命令同时提交/推送/拉到所有这些存储库.
我现在已经学习了一点Perl,发现它与我所知道的其他OOP语言有很大的不同.我试图翻译一个C#代码,如下所示:
class Car{}, class CarList{}, class Program{}
Run Code Online (Sandbox Code Playgroud)
和方法(伪代码):
if (var.GetType() == Car)
{
}
else if (var.GetType == CarList)
{
}
Run Code Online (Sandbox Code Playgroud)
如何在没有GetType函数的情况下在perl中编写它或者是否存在?
我想创建三角形预定义的多边形.我的要求是我不想在这个多边形内部创建随机点,以便使用Delaunay三角剖分算法对其进行处理.
多边形可以是凹的或凸的.
我完全可以使用Delaunay三角测量,但我不想在多边形内部创建随机点.如果我可以在此多边形内创建尽可能少的点,那将会更好.
我想尽量减少使用三角形的数量.
我怎样才能建立这个?
评论:这更像是一种与语言无关的东西,我想知道如何自己实现这一点.
我有以下HTML结构,我想找出立即的长度<td>s.这是我正在使用的代码: -
<table class="PrintTable">
<tr>
**<td>**
<table>
<thead>
<tr><th>Type Of Transaction</th></tr>
</thead>
<tbody>
<tr>
<td>Name</td>
</tr>
<tr>
<td>Age</td>
</tr>
</tbody>
</table>
</td>
**<td>**
<table>
<thead>
<tr><th>2006</th></tr>
</thead>
<tbody>
<tr>
<td>Andi</td>
</tr>
<tr>
<td>25</td>
</tr>
</tbody>
</table>
</td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)
我用来找出td长度的函数是
function getBody(element)
{
var divider=2;
var originalTable=element.clone();
var tds = $(originalTable).children('tr').children('td').length;
alert(tds);
}
Run Code Online (Sandbox Code Playgroud)
我看到的结果是0.根本没有任何线索.我期待2.任何帮助将不胜感激.
这令我困惑:
据我所读,有一个setVisibility(View.GONE)的视图; 不应再接收任何触摸或点击事件.我的布局有两个部分,它们将是可见的或消失的,因此一次只能看到其中一个部分,但View.GONE不能解决这个问题.我无法按预期看到GONE视图,但它仍然对onClick做出反应(并消耗其他视图应该获得的事件).
你能帮助我吗?
也许有趣:当我开始我的项目时,一个视图是GONE,另一个视图是可见的.这次它将按预期工作(GONE视图基本上被忽略),但在通过代码设置View.GONE后它将停止工作.
清除对象的更好方法是什么:
1)在类中编写一个清除类的所有成员的方法: MyObject.Clear();
2)在我的代码中,在业务逻辑中,null对象:MyObject = null;
我正在搜索一个函数,给出一个字符串切换到单数/复数.其实我不需要英语,但我需要其他一些欧洲语言.
有什么功能可以制作技巧吗?(给定一个要转换的字符串和语言?)
谢谢
Notepad ++突然改变了它的键盘设置,这意味着它认为我使用英文键盘,虽然我有一个Nowegian键盘.
为此,例如shift + 2变为@,而不是"它应该是什么".
我该如何重置?
谢谢!