我有一个墨卡托投影图作为JPEG,我想知道如何将给定的x,y坐标与其纬度和经度相关联.我看过Gudermannian函数,但老实说我不明白如何使用该函数并应用它.即,它期待什么输入?我发现的实现(JavaScript)似乎在-PI和PI之间取得了一个范围,但是我的y值(以像素为单位)与该范围之间的相关性是什么?
此外,我发现这个功能需要一个纬度并返回谷歌地图的瓷砖,谷歌地图也使用墨卡托.似乎如果我知道如何反转这个功能,我会非常接近我的答案.
/*<summary>Get the vertical tile number from a latitude
using Mercator projection formula</summary>*/
private int getMercatorLatitude(double lati)
{
double maxlat = Math.PI;
double lat = lati;
if (lat > 90) lat = lat - 180;
if (lat < -90) lat = lat + 180;
// conversion degre=>radians
double phi = Math.PI * lat / 180;
double res;
//double temp = Math.Tan(Math.PI / 4 - phi / 2);
//res = Math.Log(temp);
res = 0.5 * Math.Log((1 + Math.Sin(phi)) / (1 …Run Code Online (Sandbox Code Playgroud) 是否可以在没有DBA权限的情况下查看用户的角色?如果是这样,怎么样?
SELECT * FROM DBA_TAB_PRIVS WHERE GRANTEE = 'USER_NAME';
Run Code Online (Sandbox Code Playgroud)
上述查询需要"SELECT_CATALOG_ROLE"角色.
我需要在没有(DBA和SELECT_CATALOG_ROLE)权限的情况下获得上述查询的结果.
我有这个JTextPane(包裹在一个JScrollPane)由一个支持HTMLEditorKit.该内容JTextPane是简单的HTML,其中一些图像(本地文件)使用img标签嵌入.问题是当你加载JTextPane它时,需要一瞬间加载,然后它会在页面底部出现滚动条.如果我做:
JTextPane text = new JTextPane();
JScrollPane scroll = new JScrollPane(text);
// do some set up...
scroll.getVerticalScrollBar().setValue(0);
Run Code Online (Sandbox Code Playgroud)
它暂时设置滚动条,然后另一个thead(可能是负责加载图像)来并将滚动条敲回底部.我尝试添加:
((AbstractDocument)text.getDocument()).setAsynchronousLoadPriority(-1);
Run Code Online (Sandbox Code Playgroud)
但这并没有解决它.有没有办法从任一得到一个事件text.getDocument()或text当窗格完成加载,这样我可以设置滚动条,然后会通知我吗?另一种方法是我设置另一个线程等待一秒左右,然后设置滚动条,但这是一个糟糕的黑客.
你的建议?
我正在尝试做一些我认为很简单的事情,但实际上我没有运气.我想要做的就是在文档加载完毕后经过X秒后淡出div.
在我的Site.Master文件中,我有以下内容:
<%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<!-- various other links, etc commented for brevity -->
<script type="text/javascript" src="<%= ResolveUrl("~/Scripts/jquery-1.2.6.js")%>"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#notify-container").fadeOut(2000);
}
</script>
</head>
<body class="page">
<%
if (Html.ViewContext.TempData.ContainsKey("StatusMessage")) {
%>
<div id="notify-container"><%=Html.ViewContext.TempData["StatusMessage"]%></div>
<%
}
%>
<asp:ContentPlaceHolder ID="MainContent" runat="server" />
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
问题是没有任何事情会消退.我忽略了什么?
我正在寻找创建一个稍微复杂的查询,使用原始SQL很容易编写.以下是raw中查询的示例:
SELECT my,fields FROM sales WHERE is_paid = False OR status ='toship'AND otherfield ='FOO'AND another ='BAR'
这很简单,它生成所有结果为is_paid = False,然后为我的AND匹配生成第二个结果集.
现在我知道了Q对象,我知道有关过滤但是我似乎无法完全理解如何在Django ORM中实现这一目标.
有小费吗?
谢谢
我试图从javascript调用flash对象中的一个动作:
如:
function testExternalConnection(str:String):Void {
_root.debug.htmlText = "testExternalConnection ok";
}
ExternalInterface.addCallback("testExternalConnection", this, testExternalConnection);
Run Code Online (Sandbox Code Playgroud)
JS:
var movie = getFlashMovie("ap1_mod_hidden")
movie.testExternalConnection();
Run Code Online (Sandbox Code Playgroud)
同
function getFlashMovie(movieName) {
var isIE = navigator.appName.indexOf("Microsoft") != -1;
return (isIE) ? window[movieName] : document[movieName];
}
Run Code Online (Sandbox Code Playgroud)
我使用swfobject包含我的flash:
<span id="ap1_mod_hidden"></span>
<script type="text/javascript">
// Setting up the flash player
var flashvars = {
mp3Path: "stop",
artistName : "",
trackName : ""
};
var params = {
codebase: 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
src: '/flash/ap1_mod.swf',
quality: 'high',
pluginspage: 'http://www.macromedia.com/go/getflashplayer',
scale: 'showall',
devicefont: 'false',
bgcolor: '#999999',
name: 'ap1_mod', …Run Code Online (Sandbox Code Playgroud) 我的基本控制器中有一个处理我处理的错误.它大致如下:
protected override void OnException(ExceptionContext filterContext)
{
// Bail if we can't do anything
if (filterContext == null)
return;
// log
var ex = filterContext.Exception ??
new Exception("No further information exists.");
LogException(ex);
filterContext.ExceptionHandled = true;
var data = new ErrorPresentation
{
ErrorMessage = HttpUtility.HtmlEncode(ex.Message),
TheException = ex
};
filterContext.Result = View("Error", data);
base.OnException(filterContext);
}
Run Code Online (Sandbox Code Playgroud)
现在,如果控制器中发生错误,这将非常有用.问题是,如果错误是aspx页面渲染期间(比如说,在一个方法的HtmlHelper),在整个错误观点被渲染,在地方发生错误的页面上.这意味着整个错误页面(MasterPage和all)都会在错误的页面中呈现.不完全是预期的行为.
我已经尝试将View更改为RedirectToAction,但这不起作用,因为每个控制器都不存在路由(Home/Error,Configuration/Error等).
如何才能使控制器中的错误和页面上的错误都能正常工作?
假设我有以下内容:
def with_connection(f):
def decorated(*args, **kwargs):
f(get_connection(...), *args, **kwargs)
return decorated
@with_connection
def spam(connection):
# Do something
Run Code Online (Sandbox Code Playgroud)
我想测试该spam函数而不必经历设置连接的麻烦(或者装饰器正在做的任何事情).
鉴于spam,如何从中删除装饰器并获得底层的"未修饰"功能?
在C#中为类创建自己的GetHashCode方法的最佳方法是什么?假设我有一个简单的类(它覆盖了Equals方法),如下所示:
class Test
{
public string[] names;
public double[] values;
public override bool Equals(object obj)
{
return (obj is Test) && this.Equals((Test)obj);
}
public bool Equals(Test t)
{
return names.Equals(t.names) && values.Equals(t.values);
}
}
Run Code Online (Sandbox Code Playgroud)
我应该使用GetHashCode方法的默认代码吗?
public override int GetHashCode()
{
return base.GetHashCode();
}
Run Code Online (Sandbox Code Playgroud)
我应该将该方法基于我班级的内容吗?
public override int GetHashCode()
{
return names.GetHashCode() + values.GetHashCode() ;
}
Run Code Online (Sandbox Code Playgroud)
或者我应该做些什么?